Weitere Korrekturen in Zusammenhang mit Sprachunabhängigen Items und Validerung

git-svn-id: https://svn.libreccm.org/ccm/trunk@1216 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2011-11-01 13:39:10 +00:00
parent 2f4e7b1a50
commit 373769cf44
27 changed files with 271 additions and 157 deletions

View File

@ -25,6 +25,7 @@ import com.arsdigita.cms.contenttypes.ui.GenericOrganizationalUnitSubordinateOrg
import com.arsdigita.cms.contenttypes.ui.GenericOrganizationalUnitSubordinateOrgaUnitsTable; import com.arsdigita.cms.contenttypes.ui.GenericOrganizationalUnitSubordinateOrgaUnitsTable;
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard; import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
import com.arsdigita.domain.DataObjectNotFoundException; import com.arsdigita.domain.DataObjectNotFoundException;
import com.arsdigita.kernel.Kernel;
import com.arsdigita.persistence.DataCollection; import com.arsdigita.persistence.DataCollection;
import com.arsdigita.persistence.DataObject; import com.arsdigita.persistence.DataObject;
import com.arsdigita.persistence.OID; import com.arsdigita.persistence.OID;
@ -131,9 +132,11 @@ public class GenericOrganizationalUnit extends ContentPage {
GenericPerson personToLink = person; GenericPerson personToLink = person;
final ContentBundle bundle = person.getContentBundle(); final ContentBundle bundle = person.getContentBundle();
if ((bundle != null) && (bundle.hasInstance(this.getLanguage(), true))) { if ((bundle != null) && (bundle.hasInstance(this.getLanguage(), Kernel.
getConfig().
languageIndependentItems()))) {
personToLink = personToLink =
(GenericPerson) bundle.getInstance(this.getLanguage(), true); (GenericPerson) bundle.getInstance(this.getLanguage());
} }
Assert.exists(personToLink, GenericPerson.class); Assert.exists(personToLink, GenericPerson.class);
@ -225,7 +228,8 @@ public class GenericOrganizationalUnit extends ContentPage {
link.set( link.set(
GenericOrganizationalUnitSubordinateCollection.SUBORDINATE_ORGAUNIT_ORDER, GenericOrganizationalUnitSubordinateCollection.SUBORDINATE_ORGAUNIT_ORDER,
(int) getSubordinateOrgaUnits().size()); (int) getSubordinateOrgaUnits().size());
link.set(GenericOrganizationalUnitSuperiorCollection.SUPERIOR_ORGAUNIT_ORDER, link.set(
GenericOrganizationalUnitSuperiorCollection.SUPERIOR_ORGAUNIT_ORDER,
((int) getSuperiorOrgaUnits().size()) + 1); ((int) getSuperiorOrgaUnits().size()) + 1);
link.save(); link.save();
} }

View File

@ -19,6 +19,7 @@ import com.arsdigita.cms.contenttypes.GenericContact;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ContentType; import com.arsdigita.cms.ContentType;
import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil; import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil;
import com.arsdigita.kernel.Kernel;
import com.arsdigita.util.UncheckedWrapperException; import com.arsdigita.util.UncheckedWrapperException;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
@ -162,7 +163,9 @@ public class GenericContactAttachAddressPropertyForm extends BasicPageForm
GenericAddress address = (GenericAddress) data.get(ITEM_SEARCH); GenericAddress address = (GenericAddress) data.get(ITEM_SEARCH);
if (!(address.getContentBundle().hasInstance(contact.getLanguage(), true))) { if (!(address.getContentBundle().hasInstance(contact.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( ContenttypesGlobalizationUtil.globalize( data.addError( ContenttypesGlobalizationUtil.globalize(
"cms.contenttypes.ui.contact.select_address.no_suitable_language_variant")); "cms.contenttypes.ui.contact.select_address.no_suitable_language_variant"));
} }

View File

@ -28,6 +28,7 @@ import com.arsdigita.cms.contenttypes.GenericContactTypeCollection;
import com.arsdigita.cms.contenttypes.GenericPersonContactCollection; import com.arsdigita.cms.contenttypes.GenericPersonContactCollection;
import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil; import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil;
import com.arsdigita.globalization.GlobalizationHelper; import com.arsdigita.globalization.GlobalizationHelper;
import com.arsdigita.kernel.Kernel;
import com.arsdigita.util.UncheckedWrapperException; import com.arsdigita.util.UncheckedWrapperException;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
@ -192,8 +193,11 @@ public class GenericContactAttachPersonPropertyForm extends BasicPageForm
getSelectedObject(state); getSelectedObject(state);
GenericPerson person = (GenericPerson) data.get(ITEM_SEARCH); GenericPerson person = (GenericPerson) data.get(ITEM_SEARCH);
if (!(person.getContentBundle().hasInstance(contact.getLanguage(), true))) { if (!(person.getContentBundle().hasInstance(contact.getLanguage(),
data.addError("cms.contenttypes.ui.contact.select_person.no_suitable_language_variant"); Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
"cms.contenttypes.ui.contact.select_person.no_suitable_language_variant");
} }
} }

View File

@ -42,6 +42,7 @@ import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.globalization.GlobalizationHelper; import com.arsdigita.globalization.GlobalizationHelper;
import com.arsdigita.kernel.Kernel;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -202,7 +203,9 @@ public class GenericOrganizationalUnitContactAddForm
GenericContact contact = (GenericContact) data.get(ITEM_SEARCH); GenericContact contact = (GenericContact) data.get(ITEM_SEARCH);
if (!(contact.getContentBundle().hasInstance(orgaunit.getLanguage(), true))) { if (!(contact.getContentBundle().hasInstance(orgaunit.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
ContenttypesGlobalizationUtil.globalize( ContenttypesGlobalizationUtil.globalize(
"cms.contenttypes.ui.genericorgaunit.select_contact.no_suitable_language_variant")); "cms.contenttypes.ui.genericorgaunit.select_contact.no_suitable_language_variant"));

View File

@ -43,6 +43,7 @@ import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.globalization.GlobalizationHelper; import com.arsdigita.globalization.GlobalizationHelper;
import com.arsdigita.kernel.Kernel;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -245,7 +246,9 @@ public class GenericOrganizationalUnitPersonAddForm
GenericPerson person = (GenericPerson) data.get(ITEM_SEARCH); GenericPerson person = (GenericPerson) data.get(ITEM_SEARCH);
if (!(person.getContentBundle().hasInstance(orga.getLanguage(), true))) { if (!(person.getContentBundle().hasInstance(orga.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
ContenttypesGlobalizationUtil.globalize( ContenttypesGlobalizationUtil.globalize(
"cms.contenttypes.ui.genericorgaunit.person.no_suitable_language_variant")); "cms.contenttypes.ui.genericorgaunit.person.no_suitable_language_variant"));

View File

@ -13,6 +13,7 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitSubordinateCollection; import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitSubordinateCollection;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* Form for adding a subordinate organizational unit to a organizational unit. * Form for adding a subordinate organizational unit to a organizational unit.
@ -76,7 +77,8 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitAddForm
subOrgaUnit = (GenericOrganizationalUnit) subOrgaUnit. subOrgaUnit = (GenericOrganizationalUnit) subOrgaUnit.
getContentBundle().getInstance(orgaunit.getLanguage(), true); getContentBundle().getInstance(orgaunit.getLanguage(), true);
orgaunit.addSubordinateOrgaUnit(subOrgaUnit, customizer.getAssocType()); orgaunit.addSubordinateOrgaUnit(subOrgaUnit,
customizer.getAssocType());
} }
init(fse); init(fse);
@ -100,20 +102,25 @@ public class GenericOrganizationalUnitSubordinateOrgaUnitAddForm
(GenericOrganizationalUnit) data.get( (GenericOrganizationalUnit) data.get(
ITEM_SEARCH); ITEM_SEARCH);
if (!(subOrgaUnit.getContentBundle().hasInstance(orgaunit.getLanguage(), if (!(subOrgaUnit.getContentBundle().hasInstance(orgaunit.getLanguage(),
true))) { Kernel.getConfig().
languageIndependentItems()))) {
data.addError(customizer.getNoSuitableLanguageVariantMessage()); data.addError(customizer.getNoSuitableLanguageVariantMessage());
return; return;
} }
subOrgaUnit = (GenericOrganizationalUnit) subOrgaUnit.getContentBundle().getInstance(orgaunit.getLanguage(), true); subOrgaUnit = (GenericOrganizationalUnit) subOrgaUnit.getContentBundle().
getInstance(orgaunit.getLanguage(), true);
if (orgaunit.getID().equals(subOrgaUnit.getID())) { if (orgaunit.getID().equals(subOrgaUnit.getID())) {
data.addError(customizer.getAddingToItselfMessage()); data.addError(customizer.getAddingToItselfMessage());
return; return;
} }
final GenericOrganizationalUnitSubordinateCollection subOrgaUnits = orgaunit.getSubordinateOrgaUnits(); final GenericOrganizationalUnitSubordinateCollection subOrgaUnits =
subOrgaUnits.addFilter(String.format("id = %s", subOrgaUnit.getID().toString())); orgaunit.
getSubordinateOrgaUnits();
subOrgaUnits.addFilter(String.format("id = %s", subOrgaUnit.getID().
toString()));
if (subOrgaUnits.size() > 0) { if (subOrgaUnits.size() > 0) {
data.addError(customizer.getAlreadyAddedMessage()); data.addError(customizer.getAlreadyAddedMessage());
} }

View File

@ -2,7 +2,6 @@ package com.arsdigita.cms.contenttypes.ui;
import com.arsdigita.bebop.FormData; import com.arsdigita.bebop.FormData;
import com.arsdigita.bebop.FormProcessException; import com.arsdigita.bebop.FormProcessException;
import com.arsdigita.bebop.FormSection;
import com.arsdigita.bebop.Label; import com.arsdigita.bebop.Label;
import com.arsdigita.bebop.PageState; import com.arsdigita.bebop.PageState;
import com.arsdigita.bebop.event.FormInitListener; import com.arsdigita.bebop.event.FormInitListener;
@ -14,6 +13,7 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitSuperiorCollection; import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitSuperiorCollection;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -65,7 +65,8 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitAddForm
GenericOrganizationalUnit supOrgaUnit = GenericOrganizationalUnit supOrgaUnit =
(GenericOrganizationalUnit) data.get( (GenericOrganizationalUnit) data.get(
ITEM_SEARCH); ITEM_SEARCH);
supOrgaUnit = (GenericOrganizationalUnit) supOrgaUnit.getContentBundle().getInstance(orgaunit.getLanguage(), true); supOrgaUnit = (GenericOrganizationalUnit) supOrgaUnit.
getContentBundle().getInstance(orgaunit.getLanguage(), true);
orgaunit.addSuperiorOrgaUnit(supOrgaUnit, customizer.getAssocType()); orgaunit.addSuperiorOrgaUnit(supOrgaUnit, customizer.getAssocType());
} }
@ -90,20 +91,25 @@ public class GenericOrganizationalUnitSuperiorOrgaUnitAddForm
(GenericOrganizationalUnit) data.get( (GenericOrganizationalUnit) data.get(
ITEM_SEARCH); ITEM_SEARCH);
if (!(supOrgaUnit.getContentBundle().hasInstance(orgaunit.getLanguage(), if (!(supOrgaUnit.getContentBundle().hasInstance(orgaunit.getLanguage(),
true))) { Kernel.getConfig().
languageIndependentItems()))) {
data.addError(customizer.getNoSuitableLanguageVariantMessage()); data.addError(customizer.getNoSuitableLanguageVariantMessage());
return; return;
} }
supOrgaUnit = (GenericOrganizationalUnit) supOrgaUnit.getContentBundle().getInstance(orgaunit.getLanguage(), true); supOrgaUnit = (GenericOrganizationalUnit) supOrgaUnit.getContentBundle().
getInstance(orgaunit.getLanguage(), true);
if (orgaunit.getID().equals(supOrgaUnit.getID())) { if (orgaunit.getID().equals(supOrgaUnit.getID())) {
data.addError(customizer.getAddingToItselfMessage()); data.addError(customizer.getAddingToItselfMessage());
return; return;
} }
final GenericOrganizationalUnitSuperiorCollection supOrgaUnits = orgaunit.getSuperiorOrgaUnits(); final GenericOrganizationalUnitSuperiorCollection supOrgaUnits =
supOrgaUnits.addFilter(String.format("id = %s", supOrgaUnit.getID().toString())); orgaunit.
getSuperiorOrgaUnits();
supOrgaUnits.addFilter(String.format("id = %s", supOrgaUnit.getID().
toString()));
if (supOrgaUnits.size() > 0) { if (supOrgaUnits.size() > 0) {
data.addError(customizer.getAlreadyAddedMessage()); data.addError(customizer.getAlreadyAddedMessage());
} }

View File

@ -17,6 +17,7 @@ import com.arsdigita.cms.contenttypes.GenericPerson;
import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil; import com.arsdigita.cms.contenttypes.util.ContenttypesGlobalizationUtil;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicPageForm; import com.arsdigita.cms.ui.authoring.BasicPageForm;
import com.arsdigita.kernel.Kernel;
import com.arsdigita.util.UncheckedWrapperException; import com.arsdigita.util.UncheckedWrapperException;
/** /**
@ -137,7 +138,9 @@ public class GenericPersonAliasSetForm
} else if (person.equals(data.get(ITEM_SEARCH))) { } else if (person.equals(data.get(ITEM_SEARCH))) {
data.addError(ContenttypesGlobalizationUtil.globalize( data.addError(ContenttypesGlobalizationUtil.globalize(
"cms.contenttypes.person.alias.select.same_as_person")); "cms.contenttypes.person.alias.select.same_as_person"));
} else if (!alias.getContentBundle().hasInstance(person.getLanguage(), true)) { } else if (!alias.getContentBundle().hasInstance(person.getLanguage(),
Kernel.getConfig().
languageIndependentItems())) {
data.addError( data.addError(
ContenttypesGlobalizationUtil.globalize( ContenttypesGlobalizationUtil.globalize(
"cms.contenttypes.person.alias.select.no_suitable_language_variant")); "cms.contenttypes.person.alias.select.no_suitable_language_variant"));

View File

@ -42,6 +42,7 @@ import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.globalization.GlobalizationHelper; import com.arsdigita.globalization.GlobalizationHelper;
import com.arsdigita.kernel.Kernel;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -156,7 +157,9 @@ public class GenericPersonContactAddForm extends BasicItemForm {
GenericContact contact = (GenericContact) data.get(ITEM_SEARCH); GenericContact contact = (GenericContact) data.get(ITEM_SEARCH);
if (!(contact.getContentBundle().hasInstance(person.getLanguage(), true))) { if (!(contact.getContentBundle().hasInstance(person.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
ContenttypesGlobalizationUtil.globalize( ContenttypesGlobalizationUtil.globalize(
"cms.contenttypes.ui.person.select_contact.no_suitable_language_variant")); "cms.contenttypes.ui.person.select_contact.no_suitable_language_variant"));
@ -164,7 +167,8 @@ public class GenericPersonContactAddForm extends BasicItemForm {
return; return;
} }
contact = (GenericContact) contact.getContentBundle().getInstance(person.getLanguage()); contact = (GenericContact) contact.getContentBundle().getInstance(person.
getLanguage());
GenericPersonContactCollection contacts = person.getContacts(); GenericPersonContactCollection contacts = person.getContacts();
contacts.addFilter(String.format("id = %s", contact.getID().toString())); contacts.addFilter(String.format("id = %s", contact.getID().toString()));

View File

@ -32,6 +32,7 @@ import com.arsdigita.cms.contenttypes.ArticleInCollectedVolume;
import com.arsdigita.cms.contenttypes.CollectedVolume; import com.arsdigita.cms.contenttypes.CollectedVolume;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* Form for adding an association between an ArticleInCollectedVolume and a * Form for adding an association between an ArticleInCollectedVolume and a
@ -103,11 +104,17 @@ public class ArticleInCollectedVolumeCollectedVolumeForm
return; return;
} }
ArticleInCollectedVolume article = (ArticleInCollectedVolume) getItemSelectionModel().getSelectedObject(state); ArticleInCollectedVolume article =
(ArticleInCollectedVolume) getItemSelectionModel().
getSelectedObject(state);
CollectedVolume collectedVolume = (CollectedVolume) data.get(ITEM_SEARCH); CollectedVolume collectedVolume =
(CollectedVolume) data.get(ITEM_SEARCH);
if (!(collectedVolume.getContentBundle().hasInstance(article.getLanguage(), true))) { if (!(collectedVolume.getContentBundle().hasInstance(
article.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.articleInCollectedVolume.selectCollectedVolume.no_suitable_language_variant")); "publications.ui.articleInCollectedVolume.selectCollectedVolume.no_suitable_language_variant"));

View File

@ -32,6 +32,7 @@ import com.arsdigita.cms.contenttypes.ArticleInJournal;
import com.arsdigita.cms.contenttypes.Journal; import com.arsdigita.cms.contenttypes.Journal;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* Form for adding an associatio between an article in a journal and a journal. * Form for adding an associatio between an article in a journal and a journal.
@ -91,17 +92,22 @@ public class ArticleInJournalJournalForm
final FormData data = fse.getFormData(); final FormData data = fse.getFormData();
if (data.get(ITEM_SEARCH) == null) { if (data.get(ITEM_SEARCH) == null) {
data.addError(PublicationGlobalizationUtil.globalize( data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.articleInJournal.selectJournal.no_journal_selected")); "publications.ui.articleInJournal.selectJournal.no_journal_selected"));
return; return;
} }
ArticleInJournal article = (ArticleInJournal) getItemSelectionModel().getSelectedObject( ArticleInJournal article = (ArticleInJournal) getItemSelectionModel().
getSelectedObject(
state); state);
Journal journal = (Journal) data.get(ITEM_SEARCH); Journal journal = (Journal) data.get(ITEM_SEARCH);
if (!(journal.getContentBundle().hasInstance(article.getLanguage(), true))) { if (!(journal.getContentBundle().hasInstance(article.getLanguage(),
data.addError(PublicationGlobalizationUtil.globalize( Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.articleInJournal.selectJournal.no_suitable_language_variant")); "publications.ui.articleInJournal.selectJournal.no_suitable_language_variant"));
return; return;
} }

View File

@ -33,6 +33,7 @@ import com.arsdigita.cms.contenttypes.ArticleInCollectedVolumeCollection;
import com.arsdigita.cms.contenttypes.CollectedVolume; import com.arsdigita.cms.contenttypes.CollectedVolume;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -104,26 +105,36 @@ public class CollectedVolumeArticleAddForm
final FormData data = fse.getFormData(); final FormData data = fse.getFormData();
if (data.get(ITEM_SEARCH) == null) { if (data.get(ITEM_SEARCH) == null) {
data.addError(PublicationGlobalizationUtil.globalize( data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.collected_volume.articles.select_article.no_article_selected")); "publications.ui.collected_volume.articles.select_article.no_article_selected"));
return; return;
} }
CollectedVolume collectedVolume = (CollectedVolume) getItemSelectionModel().getSelectedObject(state); CollectedVolume collectedVolume =
ArticleInCollectedVolume article = (ArticleInCollectedVolume) data.get(ITEM_SEARCH); (CollectedVolume) getItemSelectionModel().
getSelectedObject(state);
ArticleInCollectedVolume article = (ArticleInCollectedVolume) data.get(
ITEM_SEARCH);
if (!(article.getContentBundle().hasInstance(collectedVolume.getLanguage(), true))) { if (!(article.getContentBundle().hasInstance(
data.addError(PublicationGlobalizationUtil.globalize( collectedVolume.getLanguage(), Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.collected_volume.articles.select_article.no_suitable_language_variant")); "publications.ui.collected_volume.articles.select_article.no_suitable_language_variant"));
return; return;
} }
article = (ArticleInCollectedVolume) article.getContentBundle().getInstance(collectedVolume.getLanguage()); article = (ArticleInCollectedVolume) article.getContentBundle().
ArticleInCollectedVolumeCollection articles = collectedVolume.getArticles(); getInstance(collectedVolume.getLanguage());
ArticleInCollectedVolumeCollection articles = collectedVolume.
getArticles();
articles.addFilter(String.format("id = %s", article.getID().toString())); articles.addFilter(String.format("id = %s", article.getID().toString()));
if (articles.size() > 0) { if (articles.size() > 0) {
data.addError(PublicationGlobalizationUtil.globalize( data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.collected_volume.articles.select_article.already_added")); "publications.ui.collected_volume.articles.select_article.already_added"));
return; return;
} }

View File

@ -13,6 +13,7 @@ import com.arsdigita.cms.contenttypes.Expertise;
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit; import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -67,7 +68,8 @@ public class ExpertiseOrdererForm
init(fse); init(fse);
} }
@Override public void validate(FormSectionEvent fse) throws FormProcessException { @Override
public void validate(FormSectionEvent fse) throws FormProcessException {
final PageState state = fse.getPageState(); final PageState state = fse.getPageState();
final FormData data = fse.getFormData(); final FormData data = fse.getFormData();
@ -78,10 +80,16 @@ public class ExpertiseOrdererForm
return; return;
} }
Expertise expertise = (Expertise) getItemSelectionModel().getSelectedObject(state); Expertise expertise = (Expertise) getItemSelectionModel().
GenericOrganizationalUnit orderer = (GenericOrganizationalUnit) data.get(ITEM_SEARCH); getSelectedObject(state);
if (!(orderer.getContentBundle().hasInstance(expertise.getLanguage(), true))) { GenericOrganizationalUnit orderer =
data.addError(PublicationGlobalizationUtil.globalize( (GenericOrganizationalUnit) data.get(
ITEM_SEARCH);
if (!(orderer.getContentBundle().hasInstance(expertise.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.expertise.orderer.no_suitable_langauge_variant")); "publications.ui.expertise.orderer.no_suitable_langauge_variant"));
return; return;

View File

@ -13,6 +13,7 @@ import com.arsdigita.cms.contenttypes.Expertise;
import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit; import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -78,10 +79,15 @@ public class ExpertiseOrganizationForm
return; return;
} }
Expertise expertise = (Expertise) getItemSelectionModel().getSelectedObject(state); Expertise expertise = (Expertise) getItemSelectionModel().
GenericOrganizationalUnit orga = (GenericOrganizationalUnit) data.get(ITEM_SEARCH); getSelectedObject(state);
if (!(orga.getContentBundle().hasInstance(expertise.getLanguage(), true))) { GenericOrganizationalUnit orga = (GenericOrganizationalUnit) data.get(
data.addError(PublicationGlobalizationUtil.globalize( ITEM_SEARCH);
if (!(orga.getContentBundle().hasInstance(expertise.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.expertise.organization.no_suitable_language_variant")); "publications.ui.expertise.organization.no_suitable_language_variant"));
return; return;
} }

View File

@ -14,6 +14,7 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnitPublicationsColle
import com.arsdigita.cms.contenttypes.Publication; import com.arsdigita.cms.contenttypes.Publication;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -86,7 +87,8 @@ public class GenericOrganizationalUnitPublicationAddForm
getSelectedObject(state); getSelectedObject(state);
Publication publication = (Publication) data.get(ITEM_SEARCH); Publication publication = (Publication) data.get(ITEM_SEARCH);
if (!(publication.getContentBundle().hasInstance(orgaunit.getLanguage(), if (!(publication.getContentBundle().hasInstance(orgaunit.getLanguage(),
true))) { Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"genericorganizationalunit.ui.publication.no_suitable_language_variant")); "genericorganizationalunit.ui.publication.no_suitable_language_variant"));

View File

@ -32,6 +32,7 @@ import com.arsdigita.cms.contenttypes.InProceedings;
import com.arsdigita.cms.contenttypes.Proceedings; import com.arsdigita.cms.contenttypes.Proceedings;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* Form for adding an association between a InProceedings publication and * Form for adding an association between a InProceedings publication and
@ -103,7 +104,7 @@ public class InProceedingsProceedingsForm
getSelectedObject(state); getSelectedObject(state);
Proceedings proceedings = (Proceedings) data.get(ITEM_SEARCH); Proceedings proceedings = (Proceedings) data.get(ITEM_SEARCH);
if (!(proceedings.getContentBundle().hasInstance(inProceedings. if (!(proceedings.getContentBundle().hasInstance(inProceedings.
getLanguage(), true))) { getLanguage(), Kernel.getConfig().languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.inProceedings.selectProceedings.no_suitable_language_variant")); "publications.ui.inProceedings.selectProceedings.no_suitable_language_variant"));

View File

@ -13,6 +13,7 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
import com.arsdigita.cms.contenttypes.InternetArticle; import com.arsdigita.cms.contenttypes.InternetArticle;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -82,7 +83,8 @@ public class InternetArticleOrganizationForm
getSelectedObject(state); getSelectedObject(state);
GenericOrganizationalUnit orga = (GenericOrganizationalUnit) data.get( GenericOrganizationalUnit orga = (GenericOrganizationalUnit) data.get(
ITEM_SEARCH); ITEM_SEARCH);
if (!(orga.getContentBundle().hasInstance(article.getLanguage(), true))) { if (!(orga.getContentBundle().hasInstance(article.getLanguage(), Kernel.
getConfig().languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.internetarticle.select_organization.no_suitable_language_variant")); "publications.ui.internetarticle.select_organization.no_suitable_language_variant"));

View File

@ -33,6 +33,7 @@ import com.arsdigita.cms.contenttypes.ArticleInJournalCollection;
import com.arsdigita.cms.contenttypes.Journal; import com.arsdigita.cms.contenttypes.Journal;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -109,7 +110,9 @@ public class JournalArticleAddForm
Journal journal = (Journal) getItemSelectionModel().getSelectedObject( Journal journal = (Journal) getItemSelectionModel().getSelectedObject(
state); state);
ArticleInJournal article = (ArticleInJournal) data.get(ITEM_SEARCH); ArticleInJournal article = (ArticleInJournal) data.get(ITEM_SEARCH);
if (!(article.getContentBundle().hasInstance(journal.getLanguage(), true))) { if (!(article.getContentBundle().hasInstance(journal.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.journal.articles.select_article.no_suitable_language_variant")); "publications.ui.journal.articles.select_article.no_suitable_language_variant"));

View File

@ -13,6 +13,7 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
import com.arsdigita.cms.contenttypes.Proceedings; import com.arsdigita.cms.contenttypes.Proceedings;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -83,8 +84,11 @@ public class ProceedingsOrganizerForm
getSelectedObject(state); getSelectedObject(state);
GenericOrganizationalUnit organizer = (GenericOrganizationalUnit) data. GenericOrganizationalUnit organizer = (GenericOrganizationalUnit) data.
get(ITEM_SEARCH); get(ITEM_SEARCH);
if (!(organizer.getContentBundle().hasInstance(proceedings.getLanguage(), true))) { if (!(organizer.getContentBundle().hasInstance(proceedings.getLanguage(),
data.addError(PublicationGlobalizationUtil.globalize( Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.proceedings.organizer.no_suitable_language_variant")); "publications.ui.proceedings.organizer.no_suitable_language_variant"));
return; return;
} }

View File

@ -33,6 +33,7 @@ import com.arsdigita.cms.contenttypes.InProceedingsCollection;
import com.arsdigita.cms.contenttypes.Proceedings; import com.arsdigita.cms.contenttypes.Proceedings;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -105,14 +106,17 @@ public class ProceedingsPapersAddForm
Proceedings proceedings = (Proceedings) getItemSelectionModel(). Proceedings proceedings = (Proceedings) getItemSelectionModel().
getSelectedObject(state); getSelectedObject(state);
InProceedings paper = (InProceedings) data.get(ITEM_SEARCH); InProceedings paper = (InProceedings) data.get(ITEM_SEARCH);
if (!(paper.getContentBundle().hasInstance(proceedings.getLanguage(), true))) { if (!(paper.getContentBundle().hasInstance(proceedings.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.proceedings.select_paper.no_suitable_language_variant")); "publications.ui.proceedings.select_paper.no_suitable_language_variant"));
return; return;
} }
paper = (InProceedings) paper.getContentBundle().getInstance(proceedings.getLanguage()); paper = (InProceedings) paper.getContentBundle().getInstance(proceedings.
getLanguage());
InProceedingsCollection papers = proceedings.getPapers(); InProceedingsCollection papers = proceedings.getPapers();
papers.addFilter(String.format("id = %s", paper.getID().toString())); papers.addFilter(String.format("id = %s", paper.getID().toString()));
if (papers.size() > 0) { if (papers.size() > 0) {

View File

@ -37,6 +37,7 @@ import com.arsdigita.cms.contenttypes.Publication;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.cms.ui.authoring.SimpleEditStep; import com.arsdigita.cms.ui.authoring.SimpleEditStep;
import com.arsdigita.kernel.Kernel;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -211,7 +212,9 @@ public class PublicationAuthorAddForm
getSelectedAuthor(); getSelectedAuthor();
editing = true; editing = true;
} }
if (!(author.getContentBundle().hasInstance(publication.getLanguage(), true))) { if (!(author.getContentBundle().hasInstance(publication.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.authors.selectAuthor.no_suitable_language_variant")); "publications.ui.authors.selectAuthor.no_suitable_language_variant"));

View File

@ -14,7 +14,7 @@ import com.arsdigita.cms.contenttypes.Publication;
import com.arsdigita.cms.contenttypes.PublicationGenericOrganizationalsUnitCollection; import com.arsdigita.cms.contenttypes.PublicationGenericOrganizationalsUnitCollection;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.persistence.DataCollection; import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -86,7 +86,8 @@ public class PublicationGenericOrganizationalUnitAddForm
GenericOrganizationalUnit orgaunit = (GenericOrganizationalUnit) data. GenericOrganizationalUnit orgaunit = (GenericOrganizationalUnit) data.
get(ITEM_SEARCH); get(ITEM_SEARCH);
if (!(orgaunit.getContentBundle().hasInstance(publication.getLanguage(), if (!(orgaunit.getContentBundle().hasInstance(publication.getLanguage(),
true))) { Kernel.getConfig().
languageIndependentItems()))) {
data.addError(PublicationGlobalizationUtil.globalize( data.addError(PublicationGlobalizationUtil.globalize(
"publications.ui.orgaunit.no_suitable_language_variant")); "publications.ui.orgaunit.no_suitable_language_variant"));
return; return;

View File

@ -35,6 +35,7 @@ import com.arsdigita.cms.contenttypes.Series;
import com.arsdigita.cms.contenttypes.SeriesCollection; import com.arsdigita.cms.contenttypes.SeriesCollection;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -108,7 +109,9 @@ public class PublicationSeriesAddForm
Publication publication = (Publication) getItemSelectionModel(). Publication publication = (Publication) getItemSelectionModel().
getSelectedObject(state); getSelectedObject(state);
Series series = (Series) data.get(ITEM_SEARCH); Series series = (Series) data.get(ITEM_SEARCH);
if (!(series.getContentBundle().hasInstance(publication.getLanguage(), true))) { if (!(series.getContentBundle().hasInstance(publication.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.series.select_series.no_suitable_language_variant")); "publications.ui.series.select_series.no_suitable_language_variant"));

View File

@ -13,6 +13,7 @@ import com.arsdigita.cms.contenttypes.PublicationWithPublisher;
import com.arsdigita.cms.contenttypes.Publisher; import com.arsdigita.cms.contenttypes.Publisher;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -85,7 +86,9 @@ public class PublicationWithPublisherSetPublisherForm
(PublicationWithPublisher) getItemSelectionModel(). (PublicationWithPublisher) getItemSelectionModel().
getSelectedObject(state); getSelectedObject(state);
Publisher publisher = (Publisher) data.get(ITEM_SEARCH); Publisher publisher = (Publisher) data.get(ITEM_SEARCH);
if (!(publisher.getContentBundle().hasInstance(publication.getLanguage(), true))) { if (!(publisher.getContentBundle().hasInstance(publication.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.with_publisher.publisher.no_suitable_language_variant")); "publications.ui.with_publisher.publisher.no_suitable_language_variant"));

View File

@ -35,6 +35,7 @@ import com.arsdigita.cms.contenttypes.GenericPerson;
import com.arsdigita.cms.contenttypes.Series; import com.arsdigita.cms.contenttypes.Series;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.GregorianCalendar; import java.util.GregorianCalendar;
@ -194,15 +195,20 @@ public class SeriesEditshipAddForm
return; return;
} }
Series series = (Series) getItemSelectionModel().getSelectedObject(state); Series series =
(Series) getItemSelectionModel().getSelectedObject(state);
GenericPerson editor = (GenericPerson) data.get(ITEM_SEARCH); GenericPerson editor = (GenericPerson) data.get(ITEM_SEARCH);
if (!(editor.getContentBundle().hasInstance(series.getLanguage(), true))) { if (!(editor.getContentBundle().hasInstance(series.getLanguage(),
data.addError(PublicationGlobalizationUtil.globalize( Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.series.editship.no_suitable_language_variant")); "publications.ui.series.editship.no_suitable_language_variant"));
return; return;
} }
editor = (GenericPerson) editor.getContentBundle().getInstance(series.getLanguage()); editor = (GenericPerson) editor.getContentBundle().getInstance(series.
getLanguage());
EditshipCollection editors = series.getEditors(); EditshipCollection editors = series.getEditors();
editors.addFilter(String.format("id = %s", editor.getID().toString())); editors.addFilter(String.format("id = %s", editor.getID().toString()));
if (editors.size() > 0) { if (editors.size() > 0) {

View File

@ -35,6 +35,7 @@ import com.arsdigita.cms.contenttypes.Series;
import com.arsdigita.cms.contenttypes.VolumeInSeriesCollection; import com.arsdigita.cms.contenttypes.VolumeInSeriesCollection;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -119,7 +120,9 @@ public class SeriesVolumeAddForm extends BasicItemForm {
Series series = (Series) getItemSelectionModel(). Series series = (Series) getItemSelectionModel().
getSelectedObject(state); getSelectedObject(state);
Publication volume = (Publication) data.get(ITEM_SEARCH); Publication volume = (Publication) data.get(ITEM_SEARCH);
if (!(volume.getContentBundle().hasInstance(series.getLanguage(), true))) { if (!(volume.getContentBundle().hasInstance(series.getLanguage(),
Kernel.getConfig().
languageIndependentItems()))) {
data.addError( data.addError(
PublicationGlobalizationUtil.globalize( PublicationGlobalizationUtil.globalize(
"publications.ui.series.volume_of_series.no_suitable_language_variant")); "publications.ui.series.volume_of_series.no_suitable_language_variant"));

View File

@ -13,6 +13,7 @@ import com.arsdigita.cms.contenttypes.GenericOrganizationalUnit;
import com.arsdigita.cms.contenttypes.UnPublished; import com.arsdigita.cms.contenttypes.UnPublished;
import com.arsdigita.cms.ui.ItemSearchWidget; import com.arsdigita.cms.ui.ItemSearchWidget;
import com.arsdigita.cms.ui.authoring.BasicItemForm; import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.kernel.Kernel;
/** /**
* *
@ -82,8 +83,11 @@ public class UnPublishedOrganizationForm
getSelectedObject(state); getSelectedObject(state);
GenericOrganizationalUnit orga = (GenericOrganizationalUnit) data.get( GenericOrganizationalUnit orga = (GenericOrganizationalUnit) data.get(
ITEM_SEARCH); ITEM_SEARCH);
if (!(orga.getContentBundle().hasInstance(unPublished.getLanguage(), true))) { if (!(orga.getContentBundle().hasInstance(unPublished.getLanguage(),
data.addError(PublicationGlobalizationUtil.globalize( Kernel.getConfig().
languageIndependentItems()))) {
data.addError(
PublicationGlobalizationUtil.globalize(
"publications.ui.unpublished.organization.no_suitable_language_variant")); "publications.ui.unpublished.organization.no_suitable_language_variant"));
return; return;
} }