From 9a39795e78a92bf7f336e20abc3e8eff62f95d9f Mon Sep 17 00:00:00 2001 From: izabel <izabel> Date: Tue, 17 Mar 2009 09:43:31 +0000 Subject: [PATCH] [LMS-780] show attachment info SVN: 10255 --- .../AbstractGenericEntityEditForm.java | 1 + .../experiment/AttachmentManager.java | 9 ++++---- .../experiment/GenericExperimentEditForm.java | 21 +++++++++++++++++-- .../GenericExperimentRegistrationForm.java | 2 +- 4 files changed, 26 insertions(+), 7 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/AbstractGenericEntityEditForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/AbstractGenericEntityEditForm.java index 60c37753c84..616748c1241 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/AbstractGenericEntityEditForm.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/AbstractGenericEntityEditForm.java @@ -146,6 +146,7 @@ abstract public class AbstractGenericEntityEditForm<T extends EntityType, S exte { setEditMode(true); infoBox.reset(); + formPanel.reset(); } protected void showCheckPage() diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AttachmentManager.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AttachmentManager.java index 9146086b4a0..d219cc255df 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AttachmentManager.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/AttachmentManager.java @@ -24,7 +24,7 @@ import com.extjs.gxt.ui.client.widget.form.FileUploadField; /** * Stores and manages {@link FileUploadField} fields. - * + * * @author Izabela Adamczyk */ public class AttachmentManager @@ -60,17 +60,18 @@ public class AttachmentManager return field; } - public boolean attachmentsDefined() + public int attachmentsDefined() { + int i = 0; for (FileUploadField field : attachmentFields) { Object value = field.getValue(); if (value != null && String.valueOf(value).length() > 0) { - return true; + i++; } } - return false; + return i; } private final FileUploadField createFileUploadField(final int counter) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java index cf1a9bd56da..19d71f0986e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentEditForm.java @@ -22,6 +22,8 @@ import java.util.List; import com.extjs.gxt.ui.client.Events; import com.extjs.gxt.ui.client.event.ButtonEvent; import com.extjs.gxt.ui.client.event.SelectionListener; +import com.extjs.gxt.ui.client.util.Format; +import com.extjs.gxt.ui.client.widget.Html; import com.extjs.gxt.ui.client.widget.form.Field; import com.extjs.gxt.ui.client.widget.form.FileUploadField; import com.google.gwt.user.client.ui.Widget; @@ -58,6 +60,8 @@ public final class GenericExperimentEditForm private String sessionKey; + private Html attachmentsInfo; + public GenericExperimentEditForm(IViewContext<IGenericClientServiceAsync> viewContext, EditableExperiment entity, boolean editMode) { @@ -93,7 +97,7 @@ public final class GenericExperimentEditForm { if (formPanel.isValid()) { - if (attachmentManager.attachmentsDefined()) + if (attachmentManager.attachmentsDefined() > 0) { // setUploadEnabled(false); formPanel.submit(); @@ -162,13 +166,26 @@ public final class GenericExperimentEditForm protected List<Widget> getEntitySpecificCheckPageWidgets() { final ArrayList<Widget> widgets = new ArrayList<Widget>(); - + widgets.add(attachmentsInfo = new Html()); return widgets; } @Override protected void updateCheckPageWidgets() { + attachmentsInfo.setHtml(getAttachmentInfoText(attachmentManager.attachmentsDefined())); } + public String getAttachmentInfoText(int attachmentDefined) + { + if (attachmentDefined > 0) + { + return Format.substitute("Added {0} new attachment{1}.", attachmentDefined, + attachmentDefined == 1 ? "" : "s"); + + } else + { + return "No new attachments added."; + } + } } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java index ecfc1afc34b..b76dc9daa33 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentRegistrationForm.java @@ -182,7 +182,7 @@ public final class GenericExperimentRegistrationForm { if (formPanel.isValid()) { - if (attachmentManager.attachmentsDefined()) + if (attachmentManager.attachmentsDefined() > 0) { setUploadEnabled(false); formPanel.submit(); -- GitLab