From acd0b15c626367974fbee0585bdd4ec4e77cc923 Mon Sep 17 00:00:00 2001 From: jensp Date: Sat, 31 May 2014 14:55:58 +0000 Subject: [PATCH] Finished testing of the new publication types for dramatic artsFinished testing of the new publication types for dramatic arts. git-svn-id: https://svn.libreccm.org/ccm/trunk@2661 8810af33-2d31-482b-a856-94f89814c4df --- .../com/arsdigita/runtime/RuntimeConfig.java | 62 ++++++++++--------- .../bundles/devel/cfg/sci-web-woPluto.xml | 24 +++++++ .../content-types/SciPublicationsMovie.pdl | 10 +-- .../content-types/SciPublicationsPlay.pdl | 14 ++--- .../cms/contenttypes/SciPublicationsMovie.xml | 5 +- .../cms/contenttypes/SciPublicationsPlay.xml | 5 +- ...blicationsDramaticArtsResources.properties | 18 ++++++ ...cationsDramaticArtsResources_de.properties | 18 ++++++ .../contenttypes/SciPublicationsMovie.java | 4 +- .../SciPublicationsMovieBundle.java | 40 ++++++------ .../cms/contenttypes/SciPublicationsPlay.java | 2 +- .../SciPublicationsPlayBundle.java | 8 +-- ...blicationsProductionCompanyCollection.java | 2 +- .../ui/SciPublicationsMovieCreate.java | 2 +- .../ui/SciPublicationsMovieDirectorSheet.java | 16 ++--- .../ui/SciPublicationsMovieDirectorStep.java | 2 +- ...SciPublicationsMovieExtraXMLGenerator.java | 39 +++++++++++- ...ublicationsMovieProductionCompanyStep.java | 4 +- .../SciPublicationsMoviePropertiesStep.java | 5 +- .../ui/SciPublicationsMoviePropertyForm.java | 8 +-- .../SciPublicationsPlayExtraXMLGenerator.java | 29 ++++++++- ...PublicationsPlayProductionTheaterForm.java | 2 +- ...ublicationsPlayProductionTheaterSheet.java | 2 +- .../ui/SciPublicationsPlayPropertiesStep.java | 2 +- .../ui/SciPublicationsPlayPropertyForm.java | 2 +- 25 files changed, 225 insertions(+), 100 deletions(-) create mode 100644 ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources.properties create mode 100644 ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources_de.properties diff --git a/ccm-core/src/com/arsdigita/runtime/RuntimeConfig.java b/ccm-core/src/com/arsdigita/runtime/RuntimeConfig.java index 3bfb8a268..f5a6ade97 100755 --- a/ccm-core/src/com/arsdigita/runtime/RuntimeConfig.java +++ b/ccm-core/src/com/arsdigita/runtime/RuntimeConfig.java @@ -115,38 +115,40 @@ public final class RuntimeConfig extends AbstractConfig { public final String getJDBCURL() { //Try to get URL from JNDI - final String url = getJDBCURLfromJNDI(); - - if (url == null) { - //No JNDI datasource configured, use old behaviour - return (String) get(m_url); - } else { - //Return URL acquired via JNDI - return url; - } +// final String url = getJDBCURLfromJNDI(); +// +// if (url == null) { +// //No JNDI datasource configured, use old behaviour +// return (String) get(m_url); +// } else { +// //Return URL acquired via JNDI +// return url; +// } + + return (String) get(m_url); } - private String getJDBCURLfromJNDI() { - final Connection connection; - try { - final Context initialContext = new InitialContext(); - final DataSource dataSource = (DataSource) initialContext.lookup( - "java:/comp/env/jdbc/ccm-ds"); - connection = dataSource.getConnection(); - final DatabaseMetaData metaData = connection.getMetaData(); - final String url = metaData.getURL(); - connection.close(); - return url; - } catch (NamingException ex) { - s_log.warn("Failed to find JNDI datasource 'java:/comp/env/jdbc/ccm-ds'. " - + "Falling back to configuration via properties file."); - return null; - } catch (SQLException ex) { - s_log.warn("Failed to to determine JDBC URL from JNDI datasource 'java:/comp/env/jdbc/ccm-ds'. " - + "Falling back to configuration via properties file."); - return null; - } - } +// private String getJDBCURLfromJNDI() { +// final Connection connection; +// try { +// final Context initialContext = new InitialContext(); +// final DataSource dataSource = (DataSource) initialContext.lookup( +// "java:/comp/env/jdbc/ccm-ds"); +// connection = dataSource.getConnection(); +// final DatabaseMetaData metaData = connection.getMetaData(); +// final String url = metaData.getURL(); +// connection.close(); +// return url; +// } catch (NamingException ex) { +// s_log.warn("Failed to find JNDI datasource 'java:/comp/env/jdbc/ccm-ds'. " +// + "Falling back to configuration via properties file."); +// return null; +// } catch (SQLException ex) { +// s_log.warn("Failed to to determine JDBC URL from JNDI datasource 'java:/comp/env/jdbc/ccm-ds'. " +// + "Falling back to configuration via properties file."); +// return null; +// } +// } /** * Returns the maximum size to be used for the connection pool. diff --git a/ccm-sci-bundle/bundles/devel/cfg/sci-web-woPluto.xml b/ccm-sci-bundle/bundles/devel/cfg/sci-web-woPluto.xml index 5a18481ea..5370898e2 100644 --- a/ccm-sci-bundle/bundles/devel/cfg/sci-web-woPluto.xml +++ b/ccm-sci-bundle/bundles/devel/cfg/sci-web-woPluto.xml @@ -73,6 +73,30 @@ + + + + + + diff --git a/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsMovie.pdl b/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsMovie.pdl index 9a4db6638..358116e0c 100644 --- a/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsMovie.pdl +++ b/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsMovie.pdl @@ -23,10 +23,12 @@ import com.arsdigita.cms.ContentPage; object type SciPublicationsMovie extends Publication { - reference key (ct_scipublications_movie.movie_id); + String[0..1] directorsStr = ct_scipublications_movies.directorsstr VARCHAR(4096); + + reference key (ct_scipublications_movies.movie_id); } -object type SciPublicationMovieBundle extends PublicationBundle { +object type SciPublicationsMovieBundle extends PublicationBundle { reference key (ct_scipublications_movie_bundles.bundle_id); } @@ -51,13 +53,13 @@ association { association { PublicationBundle[0..n] producedMovie = join cms_orgaunit_bundles.bundle_id - to ct_scipublications_movie_productioncompanies.producationcompany_id, + to ct_scipublications_movie_productioncompanies.productioncompany_id, join ct_scipublications_movie_productioncompanies.movie_id to ct_scipublications_movie_bundles.bundle_id; GenericOrganizationalUnitBundle[0..n] productionCompany = join ct_scipublications_movie_bundles.bundle_id to ct_scipublications_movie_productioncompanies.movie_id, - join ct_scipublications_movie_productioncompanies.producationcompany_id + join ct_scipublications_movie_productioncompanies.productioncompany_id to cms_orgaunit_bundles.bundle_id; Integer[0..1] companyOrder = ct_scipublications_movie_productioncompanies.company_order INTEGER; diff --git a/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsPlay.pdl b/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsPlay.pdl index c5de45888..842bdf83c 100644 --- a/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsPlay.pdl +++ b/ccm-sci-publications-dramaticarts/pdl/com/arsdigita/content-types/SciPublicationsPlay.pdl @@ -27,7 +27,7 @@ object type SciPublicationsPlay extends PublicationWithPublisher { reference key (ct_scipublications_plays.play_id); } -object type SciPublicationPlayBundle extends PublicationWithPublisherBundle { +object type SciPublicationsPlayBundle extends PublicationWithPublisherBundle { reference key (ct_scipublications_play_bundles.bundle_id); } @@ -36,13 +36,13 @@ object type SciPublicationPlayBundle extends PublicationWithPublisherBundle { association { PublicationBundle[0..n] producedPlay = join cms_orgaunit_bundles.bundle_id - to ct_scipublications_play_firstproductiontheatre.theatre_id, - join ct_scipublications_play_firstproductiontheatre.play_id - to ct_scipublications_play_bundles.bundle_id; + to ct_scipublications_play_productiontheatre.theatre_id, + join ct_scipublications_play_productiontheatre.play_id + to ct_scipublications_play_bundles.bundle_id; - GenericOrganizationalUnitBundle[0..n] productionTheater = join ct_scipublications_play_bundles.bundle_id - to ct_scipublications_play_firstproductiontheatre.play_id, - join ct_scipublications_play_firstproductiontheatre.theatre_id + GenericOrganizationalUnitBundle[0..n] productionTheatre = join ct_scipublications_play_bundles.bundle_id + to ct_scipublications_play_productiontheatre.play_id, + join ct_scipublications_play_productiontheatre.theatre_id to cms_orgaunit_bundles.bundle_id; Integer[0..1] theatreOrder = ct_scipublications_play_productiontheatre.theatre_order INTEGER; diff --git a/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsMovie.xml b/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsMovie.xml index 3e3a509cc..0a9154ada 100644 --- a/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsMovie.xml +++ b/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsMovie.xml @@ -7,8 +7,7 @@ + classname="com.arsdigita.cms.contenttypes.SciPublicationsMovie"> @@ -17,7 +16,7 @@ labelBundle="com.arsdigita.cms.contenttypes.ui.PublicationResources" descriptionKey="publications.ui.publication_properties.title.description" descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicationResources" - component="com.arsdigita.cms.contenttypes.ui.PublicationPropertiesStep" + component="com.arsdigita.cms.contenttypes.ui.SciPublicationsMoviePropertiesStep" ordering="1"/> diff --git a/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsPlay.xml b/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsPlay.xml index 69c4ed9f6..3c7298d13 100644 --- a/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsPlay.xml +++ b/ccm-sci-publications-dramaticarts/src/WEB-INF/content-types/com/arsdigita/cms/contenttypes/SciPublicationsPlay.xml @@ -7,8 +7,7 @@ + classname="com.arsdigita.cms.contenttypes.SciPublicationsPlay"> @@ -17,7 +16,7 @@ labelBundle="com.arsdigita.cms.contenttypes.ui.PublicationResources" descriptionKey="publications.ui.publication_properties.title.description" descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicationResources" - component="com.arsdigita.cms.contenttypes.ui.PublicationPropertiesStep" + component="com.arsdigita.cms.contenttypes.ui.SciPublicationsPlayPropertiesStep" ordering="1"/> diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources.properties b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources.properties new file mode 100644 index 000000000..a8564aa54 --- /dev/null +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources.properties @@ -0,0 +1,18 @@ + +publications.ui.dramaticarts.movie.productioncompany=Production Company +publications.dramaticarts.ui.movie.director=Director +publications.dramaticarts.ui.movie.director.no_director_selected=No director selected +publications.dramaticarts.ui.movie.production_company.none=No production company assigned +publications.dramaticarts.ui.movie.production_company=Production Company +publications.dramaticarts.ui.movie.production_company.remove=Remove +publications.dramaticarts.ui.movie.production_company.remove.confirm=Are you sure to remove the asssigned production company from this movie? +publications.dramaticarts.ui.movie.director.none=No director assigned +publications.dramaticarts.ui.movie.director.remove=Remove +publications.dramaticarts.ui.movie.director.remove.confirm=Are you sure to remove the director assigned to this movie? +publications.dramaticarts.play.ui.productiontheater=First production theatre +publications.dramaticarts.ui.play.first_production_year=First production year +publications.dramaticarts.ui.play.production_theater.no_theater_selected=No theatre selected +publications.dramaticarts.ui.movie.production_company.no_company_selected=No production company assigned +publications.dramaticarts.ui.play.production_theater.none=No theatre assigned +publications.dramaticarts.ui.play.production_theater.remove=Remove +publications.dramaticarts.ui.play.production_theater.remove.confirm=Are you sure to remove the assigned theatre? diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources_de.properties b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources_de.properties new file mode 100644 index 000000000..ba7dcd17f --- /dev/null +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsDramaticArtsResources_de.properties @@ -0,0 +1,18 @@ + +publications.ui.dramaticarts.movie.productioncompany=Produktionsgesellschaft +publications.dramaticarts.ui.movie.director=Regisseur +publications.dramaticarts.ui.movie.director.no_director_selected=Kein Regisseur ausgew\u00e4hlt +publications.dramaticarts.ui.movie.production_company.none=Keine Produktionsgesellschaft zugewiesen +publications.dramaticarts.ui.movie.production_company=Produktionsgesellschaft +publications.dramaticarts.ui.movie.production_company.remove=Entfernen +publications.dramaticarts.ui.movie.production_company.remove.confirm=Sind Sie sicher das die Zuweisung der Produktionsgesellschaft entfernen wollen? +publications.dramaticarts.ui.movie.director.none=Kein Regisseur zugewiesen +publications.dramaticarts.ui.movie.director.remove=Entfernen +publications.dramaticarts.ui.movie.director.remove.confirm=Wollen die den zugewiesenen Regisseur wirklich entfernen? +publications.dramaticarts.play.ui.productiontheater=Erstes Theater +publications.dramaticarts.ui.play.first_production_year=Erstes Jahr der Produktion +publications.dramaticarts.ui.play.production_theater.no_theater_selected=Kein Theater ausgew\u00e4hlt +publications.dramaticarts.ui.movie.production_company.no_company_selected=Keine Gesellschaft zugewiesen +publications.dramaticarts.ui.play.production_theater.none=Kein Theater zugewiesen +publications.dramaticarts.ui.play.production_theater.remove=Entfernen +publications.dramaticarts.ui.play.production_theater.remove.confirm=Sind Sie sicher, dass Sie das zugewiesene Theater entfernen wollen? diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovie.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovie.java index bd9116cdf..e62103a09 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovie.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovie.java @@ -80,7 +80,7 @@ public class SciPublicationsMovie extends Publication { } public void setDirector(final GenericPerson director) { - getSciPublicationsMovieBundle().addDirector(director); + getSciPublicationsMovieBundle().setDirector(director); } public GenericOrganizationalUnit getProductionCompany() { @@ -146,7 +146,7 @@ public class SciPublicationsMovie extends Publication { } private void addProductionCompany(final GenericOrganizationalUnit company) { - getSciPublicationsMovieBundle().addProducationCompany(company); + getSciPublicationsMovieBundle().addProductionCompany(company); } private void removeProductionCompany(final GenericOrganizationalUnit company) { diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovieBundle.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovieBundle.java index 22723f08a..c217f0f39 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovieBundle.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsMovieBundle.java @@ -39,13 +39,13 @@ import java.math.BigDecimal; */ public class SciPublicationsMovieBundle extends PublicationBundle { - public static final String BASE_BASE_OBJECT_TYPE + public static final String BASE_DATA_OBJECT_TYPE = "com.arsdigita.cms.contenttypes.SciPublicationsMovieBundle"; public static final String DIRECTOR = "director"; public static final String DIRECTOR_ORDER = "directorOrder"; - public static final String PRODUCATION_COMPANY - = "producationCompany"; - public static final String PRODUCATION_COMPANY_ORDER = "companyOrder"; + public static final String PRODUCTION_COMPANY + = "productionCompany"; + public static final String PRODUCTION_COMPANY_ORDER = "companyOrder"; public SciPublicationsMovieBundle(final ContentItem primary) { @@ -65,7 +65,7 @@ public class SciPublicationsMovieBundle extends PublicationBundle { } public SciPublicationsMovieBundle(final BigDecimal id) { - this(new OID(BASE_BASE_OBJECT_TYPE, id)); + this(new OID(BASE_DATA_OBJECT_TYPE, id)); } public SciPublicationsMovieBundle(final DataObject dataObject) { @@ -96,9 +96,9 @@ public class SciPublicationsMovieBundle extends PublicationBundle { return true; - } else if (PRODUCATION_COMPANY.equals(attribute)) { + } else if (PRODUCTION_COMPANY.equals(attribute)) { - final DataCollection companies = (DataCollection) pubBundle.get(PRODUCATION_COMPANY); + final DataCollection companies = (DataCollection) pubBundle.get(PRODUCTION_COMPANY); while (companies.next()) { createProductionCompanyAssoc(companies); @@ -107,10 +107,10 @@ public class SciPublicationsMovieBundle extends PublicationBundle { return true; } else { - return super.copyProperty(source, null, copier); + return super.copyProperty(source, property, copier); } } else { - return super.copyProperty(source, null, copier); + return super.copyProperty(source, property, copier); } } @@ -143,9 +143,9 @@ public class SciPublicationsMovieBundle extends PublicationBundle { .getLiveVersion(); if (liveCompany != null) { - final DataObject link = add(PRODUCATION_COMPANY, liveCompany); + final DataObject link = add(PRODUCTION_COMPANY, liveCompany); - link.set(PRODUCATION_COMPANY_ORDER, companies.get( + link.set(PRODUCTION_COMPANY_ORDER, companies.get( SciPublicationsProductionCompanyCollection.LINK_ORDER)); link.save(); @@ -311,7 +311,7 @@ public class SciPublicationsMovieBundle extends PublicationBundle { } public GenericOrganizationalUnitBundle getProductionCompany() { - final DataCollection collection = (DataCollection) get(PRODUCATION_COMPANY); + final DataCollection collection = (DataCollection) get(PRODUCTION_COMPANY); if (collection.size() == 0) { return null; @@ -330,15 +330,15 @@ public class SciPublicationsMovieBundle extends PublicationBundle { final GenericOrganizationalUnitBundle oldCompany = getProductionCompany(); if (oldCompany != null) { - remove(PRODUCATION_COMPANY, oldCompany); + remove(PRODUCTION_COMPANY, oldCompany); } if (productionCompany != null) { Assert.exists(productionCompany, GenericOrganizationalUnit.class); - final DataObject link = add(PRODUCATION_COMPANY, + final DataObject link = add(PRODUCTION_COMPANY, productionCompany.getGenericOrganizationalUnitBundle()); - link.set(PRODUCATION_COMPANY_ORDER, Integer.valueOf(1)); + link.set(PRODUCTION_COMPANY_ORDER, Integer.valueOf(1)); link.save(); } } @@ -346,17 +346,17 @@ public class SciPublicationsMovieBundle extends PublicationBundle { protected SciPublicationsProductionCompanyCollection getProductionCompanies() { return new SciPublicationsProductionCompanyCollection((DataCollection) get( - PRODUCATION_COMPANY)); + PRODUCTION_COMPANY)); } - protected void addProducationCompany(final GenericOrganizationalUnit company) { + protected void addProductionCompany(final GenericOrganizationalUnit company) { Assert.exists(company, GenericOrganizationalUnit.class); - final DataObject link = add(PRODUCATION_COMPANY, + final DataObject link = add(PRODUCTION_COMPANY, company.getGenericOrganizationalUnitBundle()); - link.set(PRODUCATION_COMPANY, Integer.valueOf((int) getProductionCompanies().size())); + link.set(PRODUCTION_COMPANY, Integer.valueOf((int) getProductionCompanies().size())); link.save(); } @@ -365,7 +365,7 @@ public class SciPublicationsMovieBundle extends PublicationBundle { Assert.exists(company, GenericOrganizationalUnit.class); - remove(PRODUCATION_COMPANY, company.getGenericOrganizationalUnitBundle()); + remove(PRODUCTION_COMPANY, company.getGenericOrganizationalUnitBundle()); } diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlay.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlay.java index 9469fe74b..87555215f 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlay.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlay.java @@ -102,7 +102,7 @@ public class SciPublicationsPlay extends PublicationWithPublisher { } private void addProductionTheater(final GenericOrganizationalUnit theater) { - getSciPublicationsPlayBundle().addProducationTheater(theater); + getSciPublicationsPlayBundle().addProductionTheater(theater); } private void removeProductionTheater(final GenericOrganizationalUnit theater) { diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlayBundle.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlayBundle.java index ba6588e5b..ce2613c14 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlayBundle.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsPlayBundle.java @@ -39,14 +39,14 @@ import java.math.BigDecimal; */ public class SciPublicationsPlayBundle extends PublicationWithPublisherBundle { - public static final String BASE_BASE_OBJECT_TYPE + public static final String BASE_DATA_OBJECT_TYPE = "com.arsdigita.cms.contenttypes.SciPublicationsPlayBundle"; public static final String PRODUCTION_THEATER = "productionTheatre"; public static final String PRODUCTION_THEATER_ORDER = "theatreOrder"; public SciPublicationsPlayBundle(final ContentItem primary) { - super(BASE_BASE_OBJECT_TYPE); + super(BASE_DATA_OBJECT_TYPE); Assert.exists(primary, ContentItem.class); @@ -62,7 +62,7 @@ public class SciPublicationsPlayBundle extends PublicationWithPublisherBundle { } public SciPublicationsPlayBundle(final BigDecimal id) throws DataObjectNotFoundException { - this(new OID(BASE_BASE_OBJECT_TYPE, id)); + this(new OID(BASE_DATA_OBJECT_TYPE, id)); } public SciPublicationsPlayBundle(final DataObject dataObject) { @@ -212,7 +212,7 @@ public class SciPublicationsPlayBundle extends PublicationWithPublisherBundle { } - protected void addProducationTheater(final GenericOrganizationalUnit theater) { + protected void addProductionTheater(final GenericOrganizationalUnit theater) { Assert.exists(theater, GenericOrganizationalUnit.class); diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsProductionCompanyCollection.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsProductionCompanyCollection.java index 2c6345068..7514c96c2 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsProductionCompanyCollection.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/SciPublicationsProductionCompanyCollection.java @@ -77,7 +77,7 @@ public class SciPublicationsProductionCompanyCollection extends DomainCollection if (currentPos == 0) { throw new IllegalArgumentException( - String.format("The provided organisation is not a producation company " + String.format("The provided organisation is not a production company " + "of this movie.")); } diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieCreate.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieCreate.java index a115c8538..da40e8cf3 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieCreate.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieCreate.java @@ -40,7 +40,7 @@ public class SciPublicationsMovieCreate extends PublicationCreate { } @Override - public PublicationBundle createBundle(final ContentItem primary) { + protected PublicationBundle createBundle(final ContentItem primary) { return new SciPublicationsMovieBundle(primary); diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorSheet.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorSheet.java index 81005bbe0..d3e9bb7b6 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorSheet.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorSheet.java @@ -110,8 +110,8 @@ public class SciPublicationsMovieDirectorSheet private boolean done; public SheetModel(final Table table, - final PageState state, - final SciPublicationsMovie movie) { + final PageState state, + final SciPublicationsMovie movie) { this.table = table; director = movie.getDirector(); if (director == null) { @@ -244,22 +244,22 @@ public class SciPublicationsMovieDirectorSheet } } - + @Override public void cellSelected(final TableActionEvent event) { final PageState state = event.getPageState(); - + final SciPublicationsMovie movie = (SciPublicationsMovie) itemModel.getSelectedObject(state); - + final TableColumn column = getColumnModel().get(event.getColumn().intValue()); - + if (TABLE_COL_EDIT.equals(column.getHeaderKey().toString())) { //Nothing - } else if(TABLE_COL_DEL.equals(column.getHeaderKey().toString())){ + } else if (TABLE_COL_DEL.equals(column.getHeaderKey().toString())) { movie.setDirector(null); } } - + @Override public void headSelected(final TableActionEvent event) { //Nothing diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorStep.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorStep.java index 2e15e6492..8a8bad7b3 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorStep.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieDirectorStep.java @@ -48,7 +48,7 @@ public class SciPublicationsMovieDirectorStep extends SimpleEditStep { = new SciPublicationsDramaticArtsGlobalisationUtil(); final BasicItemForm setDirectorForm = new SciPublicationsMovieDirectorForm(itemModel); add(SET_MOVIE_DIRECTOR_STEP, - globalisationUtil.globalise("publications.dramaticarts.movie.ui.director"), + globalisationUtil.globalise("publications.dramaticarts.ui.movie.director"), new WorkflowLockedComponentAccess(setDirectorForm, itemModel), setDirectorForm.getSaveCancelSection().getCancelButton()); diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieExtraXMLGenerator.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieExtraXMLGenerator.java index 86134b34d..214e3514e 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieExtraXMLGenerator.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieExtraXMLGenerator.java @@ -22,6 +22,8 @@ import com.arsdigita.bebop.Page; import com.arsdigita.bebop.PageState; import com.arsdigita.cms.ContentItem; import com.arsdigita.cms.ExtraXMLGenerator; +import com.arsdigita.cms.contenttypes.SciPublicationsMovie; +import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; import com.arsdigita.xml.Element; /** @@ -37,7 +39,27 @@ public class SciPublicationsMovieExtraXMLGenerator implements ExtraXMLGenerator public void generateXML(final ContentItem item, final Element element, final PageState state) { - + if (item instanceof SciPublicationsMovie) { + final SciPublicationsMovie movie = (SciPublicationsMovie) item; + + if (movie.getDirector() != null) { + final XmlGenerator generator = new XmlGenerator(movie.getDirector()); + generator.setItemElemName("director", ""); + generator.setListMode(true); + generator.generateXML(state, element, ""); + } + + if (movie.getProductionCompany() != null) { + final XmlGenerator generator = new XmlGenerator(movie.getProductionCompany()); + generator.setItemElemName("productionCompany", ""); + generator.setListMode(true); + generator.generateXML(state, element, ""); + } + + } else { + throw new IllegalArgumentException( + "This ExtraXMLGenerator can only process item of type SciPublicationsMovie"); + } } public void addGlobalStateParams(final Page page) { @@ -49,4 +71,19 @@ public class SciPublicationsMovieExtraXMLGenerator implements ExtraXMLGenerator this.listMode = listMode; } + private class XmlGenerator extends SimpleXMLGenerator { + + private final ContentItem item; + + public XmlGenerator(final ContentItem item) { + super(); + this.item = item; + } + + @Override + protected ContentItem getContentItem(final PageState state) { + return item; + } + + } } diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieProductionCompanyStep.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieProductionCompanyStep.java index 555bc2b50..8829715de 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieProductionCompanyStep.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMovieProductionCompanyStep.java @@ -49,14 +49,14 @@ public class SciPublicationsMovieProductionCompanyStep extends SimpleEditStep { final BasicItemForm setProductionCompanyForm = new SciPublicationsMovieProductionCompanyForm(itemModel); add(SET_PRODUCTION_COMPANY_STEP, - globalisationUtil.globalise("publications.ui.dramaticarts.movie.producationcompany"), + globalisationUtil.globalise("publications.ui.dramaticarts.movie.productioncompany"), new WorkflowLockedComponentAccess(setProductionCompanyForm, itemModel), setProductionCompanyForm.getSaveCancelSection().getCancelButton()); final SciPublicationsMovieProductionCompanySheet sheet = new SciPublicationsMovieProductionCompanySheet( itemModel); - setDisplayComponent(this); + setDisplayComponent(sheet); } } diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertiesStep.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertiesStep.java index 684ca0649..f159c701e 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertiesStep.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertiesStep.java @@ -59,7 +59,6 @@ public class SciPublicationsMoviePropertiesStep extends PublicationPropertiesSte final BasicPageForm editBasicSheet = new SciPublicationsMoviePropertyForm(itemModel, this); - final SciPublicationsDramaticArtsGlobalisationUtil globalisationUtil = new SciPublicationsDramaticArtsGlobalisationUtil(); basicProperties.add(EDIT_SHEET_NAME, PublicationGlobalizationUtil.globalize( "publications.ui.publication.edit_basic_sheet"), @@ -83,8 +82,8 @@ public class SciPublicationsMoviePropertiesStep extends PublicationPropertiesSte final SciPublicationsDramaticArtsGlobalisationUtil globalisationUtil = new SciPublicationsDramaticArtsGlobalisationUtil(); addStep(new SciPublicationsMovieDirectorStep(itemModel, parent), - globalisationUtil.globalise("publications.dramaticarts.ui.director")); + globalisationUtil.globalise("publications.dramaticarts.ui.movie.director")); addStep(new SciPublicationsMovieProductionCompanyStep(itemModel, parent), - globalisationUtil.globalise("publications.dramaticarts.ui.producationcompany")); + globalisationUtil.globalise("publications.dramaticarts.ui.movie.production_company")); } } diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertyForm.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertyForm.java index 08f69de62..d9db7a839 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertyForm.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsMoviePropertyForm.java @@ -43,22 +43,22 @@ public class SciPublicationsMoviePropertyForm } public SciPublicationsMoviePropertyForm(final ItemSelectionModel itemModel, - final SciPublicationsMoviePropertiesStep step) { + final SciPublicationsMoviePropertiesStep step) { super(itemModel, step); this.step = step; addSubmissionListener(this); } - + @Override protected void addWidgets() { super.addWidgets(); } - + @Override public void init(final FormSectionEvent event) throws FormProcessException { super.init(event); } - + @Override public void process(final FormSectionEvent event) throws FormProcessException { super.process(event); diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayExtraXMLGenerator.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayExtraXMLGenerator.java index 3035d0e38..26f427f56 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayExtraXMLGenerator.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayExtraXMLGenerator.java @@ -22,6 +22,8 @@ import com.arsdigita.bebop.Page; import com.arsdigita.bebop.PageState; import com.arsdigita.cms.ContentItem; import com.arsdigita.cms.ExtraXMLGenerator; +import com.arsdigita.cms.contenttypes.SciPublicationsPlay; +import com.arsdigita.cms.dispatcher.SimpleXMLGenerator; import com.arsdigita.xml.Element; /** @@ -37,7 +39,16 @@ public class SciPublicationsPlayExtraXMLGenerator implements ExtraXMLGenerator { public void generateXML(final ContentItem item, final Element element, final PageState state) { - + if (item instanceof SciPublicationsPlay) { + final SciPublicationsPlay play = (SciPublicationsPlay) item; + + if (play.getProductionTheater() != null) { + final XmlGenerator generator = new XmlGenerator(play.getProductionTheater()); + generator.setItemElemName("firstProductionTheatre", ""); + generator.setListMode(true); + generator.generateXML(state, element, ""); + } + } } public void addGlobalStateParams(final Page page) { @@ -48,5 +59,21 @@ public class SciPublicationsPlayExtraXMLGenerator implements ExtraXMLGenerator { public void setListMode(final boolean listMode) { this.listMode = listMode; } + + private class XmlGenerator extends SimpleXMLGenerator { + + private final ContentItem item; + + public XmlGenerator(final ContentItem item) { + super(); + this.item = item; + } + + @Override + protected ContentItem getContentItem(final PageState state) { + return item; + } + + } } diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterForm.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterForm.java index 752f75151..f7718d09c 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterForm.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterForm.java @@ -57,7 +57,7 @@ public class SciPublicationsPlayProductionTheaterForm final SciPublicationsDramaticArtsGlobalisationUtil globalisationUtil = new SciPublicationsDramaticArtsGlobalisationUtil(); add(new Label(globalisationUtil.globalise( - "publications.dramaticarts.ui.play.production_theater"))); + "publications.dramaticarts.play.ui.productiontheater"))); itemSearch = new ItemSearchWidget( ITEM_SEARCH, ContentType.findByAssociatedObjectType( GenericOrganizationalUnit.BASE_DATA_OBJECT_TYPE)); diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterSheet.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterSheet.java index 98c55050c..0f0f6189e 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterSheet.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayProductionTheaterSheet.java @@ -67,7 +67,7 @@ public class SciPublicationsPlayProductionTheaterSheet final TableColumnModel columnModel = getColumnModel(); columnModel.add(new TableColumn( 0, - globalisationUtil.globalise("publications.dramaticarts.ui.play.production_theater"), + globalisationUtil.globalise("publications.dramaticarts.ui.play.productiontheater"), TABLE_COL_EDIT)); columnModel.add(new TableColumn( 1, diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertiesStep.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertiesStep.java index 1c81222fc..f1cb68ad3 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertiesStep.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertiesStep.java @@ -95,7 +95,7 @@ public class SciPublicationsPlayPropertiesStep extends PublicationWithPublisherP = new SciPublicationsDramaticArtsGlobalisationUtil(); addStep(new SciPublicationsPlayProductionTheaterStep(itemModel, parent), globalisationUtil. - globalise("publications.dramaticarts.ui.first_producation_theater")); + globalise("publications.dramaticarts.ui.play.first_production_theater")); } diff --git a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertyForm.java b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertyForm.java index 0186a0340..d9ab1f80f 100644 --- a/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertyForm.java +++ b/ccm-sci-publications-dramaticarts/src/com/arsdigita/cms/contenttypes/ui/SciPublicationsPlayPropertyForm.java @@ -63,7 +63,7 @@ public class SciPublicationsPlayPropertyForm final ParameterModel firstProdYearParam = new IntegerParameter(SciPublicationsPlay.FIRST_PRODUCTION_YEAR); final TextField firstProdYear = new TextField(firstProdYearParam); firstProdYear.setMaxLength(4); - firstProdYear.setLabel(globalisationUtil.globalise("publications.dramaticarts.ui.play.first_producation_year")); + firstProdYear.setLabel(globalisationUtil.globalise("publications.dramaticarts.ui.play.first_production_year")); add(firstProdYear); }