Zusätzliche Felder für PublicPersonalProfile (Tickets 805 und 1098). Version des PPP Moduls auf 6.6.5 angehoben.

Updateskript für Update von 6.6.4 auf 6.6.5 folgt.


git-svn-id: https://svn.libreccm.org/ccm/trunk@1471 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2012-01-27 11:09:02 +00:00
parent 0ed4ddc860
commit fe43be77e4
11 changed files with 369 additions and 48 deletions

View File

@ -7,7 +7,7 @@ object type PublicPersonalProfile extends ContentPage {
String[0..1] profileUrl = ct_public_personal_profiles.profile_url VARCHAR(256); String[0..1] profileUrl = ct_public_personal_profiles.profile_url VARCHAR(256);
String[0..1] position = ct_public_personal_profile.position VARCHAR(2048); String[0..1] position = ct_public_personal_profiles.position VARCHAR(2048);
String[0..1] researchInterests = ct_public_personal_profiles.research_interests CLOB; String[0..1] researchInterests = ct_public_personal_profiles.research_interests CLOB;
String[0..1] misc = ct_public_personal_profiles.misc CLOB; String[0..1] misc = ct_public_personal_profiles.misc CLOB;

View File

@ -4,29 +4,54 @@
xsi:schemaLocation="http://xmlns.redhat.com/cms/content-types content-types.xsd"> xsi:schemaLocation="http://xmlns.redhat.com/cms/content-types content-types.xsd">
<ctd:content-type <ctd:content-type
label="PublicPersonalProfile" label="PublicPersonalProfile"
description="Item which is used to create a public personal profile." description="Item which is used to create a public personal profile."
objectType="com.arsdigita.cms.contenttypes.PublicPersonalProfile" objectType="com.arsdigita.cms.contenttypes.PublicPersonalProfile"
classname="com.arsdigita.cms.contenttypes.PublicPersonalProfile"> classname="com.arsdigita.cms.contenttypes.PublicPersonalProfile">
<!-- <ctd:authoring-kit createComponent="com.arsdigita.cms.ui.authoring.PageCreate">--> <!-- <ctd:authoring-kit createComponent="com.arsdigita.cms.ui.authoring.PageCreate">-->
<ctd:authoring-kit createComponent="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileCreate"> <ctd:authoring-kit createComponent="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileCreate">
<ctd:authoring-step <ctd:authoring-step
labelKey="publicpersonalprofile.ui.profile_properties.title" labelKey="publicpersonalprofile.ui.profile_properties.title"
labelBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources" labelBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
descriptionKey="publicpersonalprofile.ui.profile_properties.title.description" descriptionKey="publicpersonalprofile.ui.profile_properties.title.description"
descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources" descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
component="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfilePropertiesStep" component="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfilePropertiesStep"
ordering="1"/> ordering="1"/>
<ctd:authoring-step <ctd:authoring-step
labelKey="publicpersonalprofile.ui.profile_nav.title" labelKey="publicpersonalprofile.ui.profile_nav.title"
labelBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources" labelBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
descriptionKey="publicpersonalprofile.ui.profile_nav.description" descriptionKey="publicpersonalprofile.ui.profile_nav.description"
descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources" descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
component="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileNavigationStep" component="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileNavigationStep"
ordering="2"/> ordering="2"/>
<ctd:authoring-step
labelKey="publicpersonalprofile.ui.profile_position.title"
labelBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
descriptionKey="publicpersonalprofile.ui.profile_position.description"
descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
component="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfilePositionStep"
ordering="3"/>
<ctd:authoring-step
labelKey="publicpersonalprofile.ui.research_interests.title"
labelBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
descriptionKey="publicpersonalprofile.ui.research_interests.description"
descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
component="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResearchInterestsStep"
ordering="4"/>
<ctd:authoring-step
labelKey="publicpersonalprofile.ui.misc.title"
labelBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
descriptionKey="publicpersonalprofile.ui.misc.description"
descriptionBundle="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileResources"
component="com.arsdigita.cms.contenttypes.ui.PublicPersonalProfileMiscStep"
ordering="4"/>
<ctd:include href="/WEB-INF/content-types/assign-categories-step.xml"/> <ctd:include href="/WEB-INF/content-types/assign-categories-step.xml"/>

View File

@ -45,7 +45,8 @@ import java.util.TooManyListenersException;
/** /**
* *
* @author Jens Pelzetter * @author Jens Pelzetter
* @version $Id$ * @version $Id: PublicPersonalProfileCreate.java 1384 2011-12-20 18:07:11Z
* jensp $
*/ */
public class PublicPersonalProfileCreate extends PageCreate { public class PublicPersonalProfileCreate extends PageCreate {
@ -55,7 +56,7 @@ public class PublicPersonalProfileCreate extends PageCreate {
getConfig(); getConfig();
public PublicPersonalProfileCreate(final ItemSelectionModel itemModel, public PublicPersonalProfileCreate(final ItemSelectionModel itemModel,
final CreationSelector parent) { final CreationSelector parent) {
super(itemModel, parent); super(itemModel, parent);
} }
@ -75,7 +76,7 @@ public class PublicPersonalProfileCreate extends PageCreate {
add(new Label(PublicPersonalProfileGlobalizationUtil.globalize( add(new Label(PublicPersonalProfileGlobalizationUtil.globalize(
"publicpersonalprofile.ui.create.select_person"))); "publicpersonalprofile.ui.create.select_person")));
ParameterModel ownerModel = ParameterModel ownerModel =
new StringParameter(PublicPersonalProfile.OWNER); new StringParameter(PublicPersonalProfile.OWNER);
SingleSelect ownerSelect = new SingleSelect(ownerModel); SingleSelect ownerSelect = new SingleSelect(ownerModel);
ownerSelect.addValidationListener(new NotNullValidationListener()); ownerSelect.addValidationListener(new NotNullValidationListener());
@ -83,46 +84,49 @@ public class PublicPersonalProfileCreate extends PageCreate {
ownerSelect.addPrintListener(new PrintListener() { ownerSelect.addPrintListener(new PrintListener() {
public void prepare(final PrintEvent event) { public void prepare(final PrintEvent event) {
final SingleSelect ownerSelect = (SingleSelect) event.getTarget(); final SingleSelect ownerSelect = (SingleSelect) event.
getTarget();
String personType = config.getPersonType(); String personType = config.getPersonType();
if ((personType == null) || (personType.isEmpty())) { if ((personType == null) || (personType.isEmpty())) {
personType = personType =
"com.arsdigita.cms.contenttypes.GenericPerson"; "com.arsdigita.cms.contenttypes.GenericPerson";
} }
ContentTypeCollection types = ContentTypeCollection types =
ContentType.getAllContentTypes(); ContentType.getAllContentTypes();
types.addFilter( types.addFilter(
String.format("className = '%s'", personType)); String.format("className = '%s'", personType));
if (types.size() == 0) { if (types.size() == 0) {
personType = personType =
"com.arsdigita.cms.contenttypes.GenericPerson"; "com.arsdigita.cms.contenttypes.GenericPerson";
} }
DataCollection persons = SessionManager.getSession(). DataCollection persons = SessionManager.getSession().
retrieve( retrieve(
personType); personType);
persons.addFilter("profile is null"); persons.addFilter("profile is null");
persons.addFilter(String.format("version = '%s'", persons.addFilter(String.format("version = '%s'",
ContentItem.DRAFT)); ContentItem.DRAFT));
persons.addOrder("surname asc"); persons.addOrder("surname asc");
persons.addOrder("givenname asc"); persons.addOrder("givenname asc");
persons.addOrder("language asc"); persons.addOrder("language asc");
ownerSelect.addOption(new Option("", "")); ownerSelect.addOption(new Option("", ""));
//Store the parent ids of processed items to remove double entries. //Store the parent ids of processed items to remove double entries.
final List<BigDecimal> processed = new ArrayList<BigDecimal>(); final List<BigDecimal> processed =
new ArrayList<BigDecimal>();
while (persons.next()) { while (persons.next()) {
GenericPerson person = GenericPerson person =
(GenericPerson) DomainObjectFactory.newInstance(persons.getDataObject()); (GenericPerson) DomainObjectFactory.
newInstance(persons.getDataObject());
if (processed.contains(person.getParent().getID())) { if (processed.contains(person.getParent().getID())) {
continue; continue;
} else { } else {
ownerSelect.addOption(new Option( ownerSelect.addOption(new Option(
person.getID().toString(), person.getID().toString(),
String.format("%s (%s)", String.format("%s (%s)",
person.getFullName(), person.getFullName(),
person.getLanguage()))); person.getLanguage())));
processed.add(person.getParent().getID()); processed.add(person.getParent().getID());
} }
} }
@ -139,7 +143,7 @@ public class PublicPersonalProfileCreate extends PageCreate {
"cms.ui.authoring.page_launch_date"))); "cms.ui.authoring.page_launch_date")));
ParameterModel launchDateParam = new DateParameter(LAUNCH_DATE); ParameterModel launchDateParam = new DateParameter(LAUNCH_DATE);
com.arsdigita.bebop.form.Date launchDate = com.arsdigita.bebop.form.Date launchDate =
new com.arsdigita.bebop.form.Date( new com.arsdigita.bebop.form.Date(
launchDateParam); launchDateParam);
if (ContentSection.getConfig().getRequireLaunchDate()) { if (ContentSection.getConfig().getRequireLaunchDate()) {
launchDate.addValidationListener( launchDate.addValidationListener(
@ -159,16 +163,17 @@ public class PublicPersonalProfileCreate extends PageCreate {
PublicPersonalProfile.OWNER); PublicPersonalProfile.OWNER);
if ((id == null) || id.trim().isEmpty()) { if ((id == null) || id.trim().isEmpty()) {
fse.getFormData().addError(PublicPersonalProfileGlobalizationUtil.globalize("publicpersonalprofile.ui.person.required")); fse.getFormData().addError(PublicPersonalProfileGlobalizationUtil.
globalize("publicpersonalprofile.ui.person.required"));
return; return;
} }
GenericPerson owner = new GenericPerson(new BigDecimal(id)); GenericPerson owner = new GenericPerson(new BigDecimal(id));
validateNameUniqueness(folder, validateNameUniqueness(folder,
fse, fse,
String.format("%s-profile", String.format("%s-profile",
GenericPerson.urlSave( GenericPerson.urlSave(
owner.getFullName()))); owner.getFullName())));
} }
@ -186,7 +191,7 @@ public class PublicPersonalProfileCreate extends PageCreate {
GenericPerson owner = new GenericPerson(new BigDecimal(id)); GenericPerson owner = new GenericPerson(new BigDecimal(id));
String name = String.format("%s-profile", String name = String.format("%s-profile",
GenericPerson.urlSave(owner.getFullName())); GenericPerson.urlSave(owner.getFullName()));
String title = String.format("%s (Profil)", owner.getFullName()); String title = String.format("%s (Profil)", owner.getFullName());
final ContentPage item = createContentPage(state); final ContentPage item = createContentPage(state);
@ -220,18 +225,18 @@ public class PublicPersonalProfileCreate extends PageCreate {
DataCollection profiles = SessionManager.getSession().retrieve( DataCollection profiles = SessionManager.getSession().retrieve(
PublicPersonalProfile.BASE_DATA_OBJECT_TYPE); PublicPersonalProfile.BASE_DATA_OBJECT_TYPE);
profiles.addFilter(String.format("profileUrl = '%s'", profiles.addFilter(String.format("profileUrl = '%s'",
profileUrl)); profileUrl));
profiles.addFilter(String.format("version = '%s'", ContentItem.DRAFT)); profiles.addFilter(String.format("version = '%s'", ContentItem.DRAFT));
while (profiles.size() > 0) { while (profiles.size() > 0) {
i++; i++;
profileUrl = String.format("%s%d", profileUrl = String.format("%s%d",
owner.getSurname().toLowerCase(), owner.getSurname().toLowerCase(),
i); i);
profiles.reset(); profiles.reset();
profiles.addFilter(String.format("profileUrl = '%s'", profiles.addFilter(String.format("profileUrl = '%s'",
profileUrl)); profileUrl));
profiles.addFilter( profiles.addFilter(
String.format("version = '%s'", ContentItem.DRAFT)); String.format("version = '%s'", ContentItem.DRAFT));
} }

View File

@ -0,0 +1,77 @@
package com.arsdigita.cms.contenttypes.ui;
import com.arsdigita.bebop.FormData;
import com.arsdigita.bebop.FormProcessException;
import com.arsdigita.bebop.Label;
import com.arsdigita.bebop.PageState;
import com.arsdigita.bebop.event.FormInitListener;
import com.arsdigita.bebop.event.FormProcessListener;
import com.arsdigita.bebop.event.FormSectionEvent;
import com.arsdigita.bebop.form.TextArea;
import com.arsdigita.bebop.parameters.ParameterModel;
import com.arsdigita.bebop.parameters.StringParameter;
import com.arsdigita.cms.ItemSelectionModel;
import com.arsdigita.cms.contenttypes.PublicPersonalProfile;
import com.arsdigita.cms.ui.CMSDHTMLEditor;
import com.arsdigita.cms.ui.authoring.BasicItemForm;
/**
*
* @author Jens Pelzetter
* @version $Id$
*/
public class PublicPersonalProfileMiscEditForm
extends BasicItemForm
implements FormInitListener, FormProcessListener {
public PublicPersonalProfileMiscEditForm(final ItemSelectionModel itemModel) {
super("PublicPersonalProfileEditMisc", itemModel);
}
@Override
protected void addWidgets() {
add(new Label(PublicPersonalProfileGlobalizationUtil.globalize(
"publicpersonalprofile.ui.misc")));
final ParameterModel miscParam = new StringParameter(
PublicPersonalProfile.MISC);
final TextArea misc = new CMSDHTMLEditor(miscParam);
misc.setCols(75);
misc.setRows(8);
add(misc);
}
@Override
public void init(final FormSectionEvent fse) throws FormProcessException {
final PageState state = fse.getPageState();
final FormData data = fse.getFormData();
final PublicPersonalProfile profile =
(PublicPersonalProfile) getItemSelectionModel().
getSelectedItem(state);
data.put(PublicPersonalProfile.MISC, profile.getMisc());
setVisible(state, true);
}
@Override
public void process(final FormSectionEvent fse)
throws FormProcessException {
final PageState state = fse.getPageState();
final FormData data = fse.getFormData();
final PublicPersonalProfile profile =
(PublicPersonalProfile) getItemSelectionModel().
getSelectedItem(state);
if ((profile != null)
&& getSaveCancelSection().getSaveButton().isSelected(state)) {
profile.setMisc(
(String) data.get(PublicPersonalProfile.MISC));
profile.save();
}
init(fse);
}
}

View File

@ -0,0 +1,54 @@
package com.arsdigita.cms.contenttypes.ui;
import com.arsdigita.bebop.Component;
import com.arsdigita.cms.ItemSelectionModel;
import com.arsdigita.cms.contenttypes.PublicPersonalProfile;
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
import com.arsdigita.toolbox.ui.DomainObjectPropertySheet;
/**
*
* @author Jens Pelzetter
* @version $Id$
*/
public class PublicPersonalProfileMiscStep extends SimpleEditStep {
private String EDIT_MISC_SHEET_NAME = "editMisc";
public PublicPersonalProfileMiscStep(final ItemSelectionModel itemModel,
final AuthoringKitWizard parent) {
this(itemModel, parent, null);
}
public PublicPersonalProfileMiscStep(final ItemSelectionModel itemModel,
final AuthoringKitWizard parent,
final String prefix) {
super(itemModel, parent, prefix);
final BasicItemForm editPositionForm = new PublicPersonalProfileMiscEditForm(
itemModel);
add(EDIT_MISC_SHEET_NAME,
(String) PublicPersonalProfileGlobalizationUtil.globalize(
"publicpersonalprofile.ui.misc.edit").localize(),
new WorkflowLockedComponentAccess(editPositionForm, itemModel),
editPositionForm.getSaveCancelSection().getCancelButton());
setDisplayComponent(getPublicPersonalProfilePositionSheet(itemModel));
}
public static Component getPublicPersonalProfilePositionSheet(
final ItemSelectionModel itemModel) {
final DomainObjectPropertySheet sheet = new DomainObjectPropertySheet(
itemModel);
sheet.add(PublicPersonalProfileGlobalizationUtil.globalize(
"publicpersonalprofile.ui.misc"),
PublicPersonalProfile.MISC);
return sheet;
}
}

View File

@ -22,8 +22,7 @@ import com.arsdigita.cms.ui.authoring.BasicItemForm;
*/ */
public class PublicPersonalProfilePositionEditForm public class PublicPersonalProfilePositionEditForm
extends BasicItemForm extends BasicItemForm
implements FormProcessListener, implements FormProcessListener, FormInitListener {
FormInitListener {
public PublicPersonalProfilePositionEditForm( public PublicPersonalProfilePositionEditForm(
final ItemSelectionModel itemModel) { final ItemSelectionModel itemModel) {
@ -46,7 +45,8 @@ public class PublicPersonalProfilePositionEditForm
public void init(final FormSectionEvent fse) throws FormProcessException { public void init(final FormSectionEvent fse) throws FormProcessException {
final PageState state = fse.getPageState(); final PageState state = fse.getPageState();
final FormData data = fse.getFormData(); final FormData data = fse.getFormData();
final PublicPersonalProfile profile = (PublicPersonalProfile) getItemSelectionModel(). final PublicPersonalProfile profile =
(PublicPersonalProfile) getItemSelectionModel().
getSelectedItem(state); getSelectedItem(state);
data.put(PublicPersonalProfile.POSITION, profile.getPosition()); data.put(PublicPersonalProfile.POSITION, profile.getPosition());
@ -59,12 +59,14 @@ public class PublicPersonalProfilePositionEditForm
throws FormProcessException { throws FormProcessException {
final PageState state = fse.getPageState(); final PageState state = fse.getPageState();
final FormData data = fse.getFormData(); final FormData data = fse.getFormData();
final PublicPersonalProfile profile = (PublicPersonalProfile) getItemSelectionModel(). final PublicPersonalProfile profile =
(PublicPersonalProfile) getItemSelectionModel().
getSelectedItem(state); getSelectedItem(state);
if ((profile != null) if ((profile != null)
&& getSaveCancelSection().getSaveButton().isSelected(state)) { && getSaveCancelSection().getSaveButton().isSelected(state)) {
profile.setPosition((String) data.get(PublicPersonalProfile.POSITION)); profile.setPosition(
(String) data.get(PublicPersonalProfile.POSITION));
profile.save(); profile.save();
} }

View File

@ -0,0 +1,81 @@
package com.arsdigita.cms.contenttypes.ui;
import com.arsdigita.bebop.FormData;
import com.arsdigita.bebop.FormProcessException;
import com.arsdigita.bebop.Label;
import com.arsdigita.bebop.PageState;
import com.arsdigita.bebop.event.FormInitListener;
import com.arsdigita.bebop.event.FormProcessListener;
import com.arsdigita.bebop.event.FormSectionEvent;
import com.arsdigita.bebop.form.TextArea;
import com.arsdigita.bebop.parameters.ParameterModel;
import com.arsdigita.bebop.parameters.StringParameter;
import com.arsdigita.cms.ItemSelectionModel;
import com.arsdigita.cms.contenttypes.PublicPersonalProfile;
import com.arsdigita.cms.ui.CMSDHTMLEditor;
import com.arsdigita.cms.ui.authoring.BasicItemForm;
/**
*
* @author Jens Pelzetter
* @version $Id$
*/
public class PublicPersonalProfileResearchInterestsEditStep
extends BasicItemForm
implements FormProcessListener,
FormInitListener {
public PublicPersonalProfileResearchInterestsEditStep(
final ItemSelectionModel itemModel) {
super("PublicPersonalProfileEditResearchInterests",
itemModel);
}
@Override
protected void addWidgets() {
add(new Label(PublicPersonalProfileGlobalizationUtil.globalize(
"publicpersonalprofile.ui.research_interests")));
final ParameterModel riParam =
new StringParameter(
PublicPersonalProfile.RESEARCH_INTERESTS);
final TextArea researchInterests = new CMSDHTMLEditor(riParam);
researchInterests.setCols(75);
researchInterests.setRows(16);
add(researchInterests);
}
@Override
public void init(final FormSectionEvent fse) throws FormProcessException {
final PageState state = fse.getPageState();
final FormData data = fse.getFormData();
final PublicPersonalProfile profile =
(PublicPersonalProfile) getItemSelectionModel().
getSelectedItem(state);
data.put(PublicPersonalProfile.RESEARCH_INTERESTS,
profile.getResearchInterests());
setVisible(state, true);
}
@Override
public void process(final FormSectionEvent fse) throws FormProcessException {
final PageState state = fse.getPageState();
final FormData data = fse.getFormData();
final PublicPersonalProfile profile =
(PublicPersonalProfile) getItemSelectionModel().
getSelectedItem(state);
if ((profile != null)
&& getSaveCancelSection().getSaveButton().isSelected(state)) {
profile.setResearchInterests((String) data.get(
PublicPersonalProfile.RESEARCH_INTERESTS));
profile.save();
}
init(fse);
}
}

View File

@ -0,0 +1,59 @@
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.arsdigita.cms.contenttypes.ui;
import com.arsdigita.bebop.Component;
import com.arsdigita.cms.ItemSelectionModel;
import com.arsdigita.cms.contenttypes.PublicPersonalProfile;
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
import com.arsdigita.cms.ui.authoring.BasicItemForm;
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
import com.arsdigita.toolbox.ui.DomainObjectPropertySheet;
/**
*
* @author Jens Pelzetter
* @version $Id$
*/
public class PublicPersonalProfileResearchInterestsStep extends SimpleEditStep {
private String EDIT_RI_SHEET_NAME = "editResearchInterests";
public PublicPersonalProfileResearchInterestsStep(
final ItemSelectionModel itemModel,
final AuthoringKitWizard parent) {
this(itemModel, parent, null);
}
public PublicPersonalProfileResearchInterestsStep(
final ItemSelectionModel itemModel,
final AuthoringKitWizard parent,
final String prefix) {
super(itemModel, parent, prefix);
final BasicItemForm editRiForm =
new PublicPersonalProfileMiscEditForm(itemModel);
add(EDIT_RI_SHEET_NAME, (String) PublicPersonalProfileGlobalizationUtil.
globalize("publicpersonalprofile.ui.research_interests.edit").
localize(),
new WorkflowLockedComponentAccess(editRiForm, itemModel),
editRiForm.getSaveCancelSection().getCancelButton());
setDisplayComponent(getResearchInterestsSheet(itemModel));
}
public static Component getResearchInterestsSheet(
final ItemSelectionModel itemModel) {
final DomainObjectPropertySheet sheet = new DomainObjectPropertySheet(
itemModel);
sheet.add(PublicPersonalProfileGlobalizationUtil.globalize(
"publicpersonalprofile.ui.research_interests"),
PublicPersonalProfile.RESEARCH_INTERESTS);
return sheet;
}
}

View File

@ -32,3 +32,12 @@ publicpersonalprofile.ui.navitems.delete.confirm=Do you really want to delete th
publicpersonalprofile.ui.navitems.up=Up publicpersonalprofile.ui.navitems.up=Up
publicpersonalprofile.ui.navitems.down=Down publicpersonalprofile.ui.navitems.down=Down
publicpersonalprofile.ui.profile_url.reserved=The provided URL fragment is a reserved name, and can't be used. publicpersonalprofile.ui.profile_url.reserved=The provided URL fragment is a reserved name, and can't be used.
publicpersonalprofile.ui.position.edit=Edit position
publicpersonalprofile.ui.position=Position
publicpersonalprofile.ui.profile_position.title=Position
publicpersonalprofile.ui.research_interests.edit=Edit interests
publicpersonalprofile.ui.research_interests=Interests
publicpersonalprofile.ui.research_interests.title=Interests
publicpersonalprofile.ui.misc=Miscellaneous
publicpersonalprofile.ui.misc.edit=Edit miscellaneous
publicpersonalprofile.ui.misc.title=Miscellaneous

View File

@ -32,3 +32,12 @@ publicpersonalprofile.ui.navitems.delete.confirm=Soll dieser Navigationspunkt wi
publicpersonalprofile.ui.navitems.up=Hoch publicpersonalprofile.ui.navitems.up=Hoch
publicpersonalprofile.ui.navitems.down=Runter publicpersonalprofile.ui.navitems.down=Runter
publicpersonalprofile.ui.profile_url.reserved=Das angegebene URL-Fragment ist ein reservierter Name und kann nicht verwendet werden. publicpersonalprofile.ui.profile_url.reserved=Das angegebene URL-Fragment ist ein reservierter Name und kann nicht verwendet werden.
publicpersonalprofile.ui.position.edit=Position editieren
publicpersonalprofile.ui.position=Position
publicpersonalprofile.ui.profile_position.title=Position
publicpersonalprofile.ui.research_interests.edit=Schwerpunkte bearbeiten
publicpersonalprofile.ui.research_interests=Schwerpunkte
publicpersonalprofile.ui.research_interests.title=Schwerpunkte
publicpersonalprofile.ui.misc=Sonstiges
publicpersonalprofile.ui.misc.edit=Sonstiges bearbeiten
publicpersonalprofile.ui.misc.title=Sonstiges

View File

@ -2,7 +2,7 @@
<ccm:application xmlns:ccm="http://ccm.redhat.com/ccm-project" <ccm:application xmlns:ccm="http://ccm.redhat.com/ccm-project"
name="ccm-sci-types-project" name="ccm-sci-types-project"
prettyName="Scientific CMS Project content type" prettyName="Scientific CMS Project content type"
version = "6.6.4" version = "6.6.5"
release="1" release="1"
webapp="ROOT"> webapp="ROOT">