Reviewed (Begutachtet) für einige Publikationen eingefügt. Oberfläche fehlt noch

git-svn-id: https://svn.libreccm.org/ccm/trunk@830 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2011-04-05 13:21:28 +00:00
parent 8aca4315bd
commit baa2f1d2a5
10 changed files with 91 additions and 5 deletions

View File

@ -28,6 +28,8 @@ object type ArticleInCollectedVolume extends Publication {
Integer[0..1] pagesFrom = ct_article_in_collected_volume.pages_from INTEGER;
Integer[0..1] pagesTo = ct_article_in_collected_volume.pages_to INTEGER;
String[0..1] chapter = ct_article_in_collected_volume.chapter VARCHAR(512);
Boolean[0..1] reviewed = ct_article_in_collected_volume.reviewed BIT;
reference key (ct_article_in_collected_volume.article_id);

View File

@ -30,6 +30,7 @@ object type ArticleInJournal extends Publication {
Integer[0..1] pagesFrom = ct_article_in_journal.pages_from INTEGER;
Integer[0..1] pagesTo = ct_article_in_journal.pages_to INTEGER;
Date[0..1] publicationDate = ct_article_in_journal.publication_date DATE;
Boolean[0..1] reviewed = ct_article_in_journal.reviewed BIT;
reference key (ct_article_in_journal.article_in_journal_id);

View File

@ -26,6 +26,8 @@ import com.arsdigita.cms.ContentPage;
object type CollectedVolume extends PublicationWithPublisher {
reference key (ct_collected_volume.collected_volume_id);
Boolean[0..1] reviewed = ct_collected_volume.reviewed BIT;
}
@ -42,5 +44,7 @@ association {
Integer[0..1] articleOrder = ct_collected_volume_article_map.article_order INTEGER;
}

View File

@ -27,4 +27,6 @@ object type Monograph extends PublicationWithPublisher {
reference key (ct_monograph.monograph_id);
Boolean[0..1] reviewed = ct_monograph.reviewed BIT;
}

View File

@ -26,5 +26,6 @@ import com.arsdigita.cms.ContentPage;
object type WorkingPaper extends UnPublished {
reference key (ct_working_paper.working_paper_id);
Boolean[0..1] reviewed = ct_working_paper.reviewed BIT;
}

View File

@ -29,7 +29,8 @@ import java.math.BigDecimal;
* @author Jens Pelzetter
*/
public class Monograph extends PublicationWithPublisher {
public static final String REVIEWED = "reviewed";
public static final String BASE_DATA_OBJECT_TYPE =
"com.arsdigita.cms.contenttypes.Monograph";
@ -52,5 +53,13 @@ public class Monograph extends PublicationWithPublisher {
public Monograph(String type) {
super(type);
}
public Boolean getReviewed() {
return (Boolean) get(REVIEWED);
}
public void setReviewed(Boolean reviewed) {
set(REVIEWED, reviewed);
}
}

View File

@ -21,11 +21,15 @@ package com.arsdigita.cms.contenttypes.ui;
import com.arsdigita.bebop.Component;
import com.arsdigita.bebop.Label;
import com.arsdigita.bebop.PageState;
import com.arsdigita.cms.ItemSelectionModel;
import com.arsdigita.cms.contenttypes.Monograph;
import com.arsdigita.cms.ui.authoring.AuthoringKitWizard;
import com.arsdigita.cms.ui.authoring.BasicPageForm;
import com.arsdigita.cms.ui.authoring.SimpleEditStep;
import com.arsdigita.cms.ui.workflow.WorkflowLockedComponentAccess;
import com.arsdigita.domain.DomainObject;
import com.arsdigita.domain.DomainService;
import com.arsdigita.toolbox.ui.DomainObjectPropertySheet;
/**
@ -42,9 +46,12 @@ public class MonographPropertiesStep
public static Component getMonographPropertySheet(
ItemSelectionModel itemModel) {
DomainObjectPropertySheet sheet = (DomainObjectPropertySheet)
PublicationWithPublisherPropertiesStep.
getPublicationWithPublisherPropertySheet(itemModel);
DomainObjectPropertySheet sheet = (DomainObjectPropertySheet) PublicationWithPublisherPropertiesStep.
getPublicationWithPublisherPropertySheet(itemModel);
/*sheet.add(PublicationGlobalizationUtil.globalize(
"publications.ui.monograph.reviewed"),
Monograph.REVIEWED, new ReviewedFormatter());*/
return sheet;
}
@ -75,4 +82,25 @@ public class MonographPropertiesStep
"publications.ui.publication.basic_properties").localize()),
basicProperties);
}
private static class ReviewedFormatter
extends DomainService
implements DomainObjectPropertySheet.AttributeFormatter {
public ReviewedFormatter() {
super();
}
public String format(DomainObject obj, String attribute, PageState state) {
if ((get(obj, attribute) != null)
&& (get(obj, attribute) instanceof Boolean)
&& ((Boolean) get(obj, attribute) == true)) {
return (String) PublicationGlobalizationUtil.globalize(
"publications.ui.monograph.reviewed.yes").localize();
} else {
return (String) PublicationGlobalizationUtil.globalize(
"publications.ui.monograph.reviewed.no").localize();
}
}
}
}

View File

@ -21,10 +21,15 @@ 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.event.FormInitListener;
import com.arsdigita.bebop.event.FormProcessListener;
import com.arsdigita.bebop.event.FormSectionEvent;
import com.arsdigita.bebop.event.FormSubmissionListener;
import com.arsdigita.bebop.form.CheckboxGroup;
import com.arsdigita.bebop.form.Option;
import com.arsdigita.bebop.parameters.ArrayParameter;
import com.arsdigita.bebop.parameters.BooleanParameter;
import com.arsdigita.cms.ItemSelectionModel;
import com.arsdigita.cms.contenttypes.Monograph;
@ -38,9 +43,12 @@ public class MonographPropertyForm
FormInitListener,
FormSubmissionListener {
private static final String REVIEWED = "reviewed";
private MonographPropertiesStep m_step;
public static final String ID = "MonographEdit";
private CheckboxGroup reviewed;
public MonographPropertyForm(ItemSelectionModel itemModel) {
this(itemModel, null);
}
@ -55,6 +63,12 @@ public class MonographPropertyForm
@Override
protected void addWidgets() {
super.addWidgets();
/* add(new Label(PublicationGlobalizationUtil.globalize(
"publications.ui.monograph.reviewed")));
reviewed = new CheckboxGroup("reviewedGroup");
reviewed.addOption(new Option(REVIEWED, ""));
add(reviewed);*/
}
@Override
@ -63,6 +77,12 @@ public class MonographPropertyForm
FormData data = fse.getFormData();
Monograph monograph = (Monograph) super.initBasicWidgets(fse);
if ((monograph.getReviewed() != null) && (monograph.getReviewed())) {
reviewed.setValue(fse.getPageState(), new String[]{REVIEWED});
} else {
reviewed.setValue(fse.getPageState(), null);
}
}
@Override
@ -70,6 +90,19 @@ public class MonographPropertyForm
super.process(fse);
FormData data = fse.getFormData();
Monograph monograph = (Monograph) super.processBasicWidgets(fse);
Monograph monograph = (Monograph) super.processBasicWidgets(fse);
if ((monograph != null) && getSaveCancelSection().getSaveButton().
isSelected(fse.getPageState())) {
if (reviewed.getValue(fse.getPageState()) == null) {
monograph.setReviewed(false);
} else {
monograph.setReviewed(true);
}
monograph.save();
}
}
}

View File

@ -298,3 +298,6 @@ publications.ui.internetarticle.setOrganization=Set organization
publications.ui.internetarticle.organization.none=No organization associated
publications.ui.internetarticle.select_organization=Select organization
publication.ui.internetarticle.organization.remove=Remove
publications.ui.monograph.reviewed=Reviewed
publications.ui.monograph.reviewed.yes=Yes
publications.ui.monograph.reviewed.no=No

View File

@ -297,3 +297,6 @@ publications.ui.internetarticle.setOrganization=Organisation zuweisen
publications.ui.internetarticle.organization.none=Keine Organisation zugewiesen
publications.ui.internetarticle.select_organization=Organisation ausw\u00e4hlen
publication.ui.internetarticle.organization.remove=Entfernen
publications.ui.monograph.reviewed=Begutachtet
publications.ui.monograph.reviewed.yes=Ja
publications.ui.monograph.reviewed.no=Nein