From 8c2ae8bd1d84175166b39cbf99d8361200d3e5a9 Mon Sep 17 00:00:00 2001 From: Jens Pelzetter Date: Thu, 21 Apr 2022 20:47:28 +0200 Subject: [PATCH] Bug fixes for sci-types-project --- .../contenttypes/sciproject/SciProject.java | 14 + .../ui/SciProjectAuthoringSteps.java | 35 ++ .../sciproject/ui/SciProjectCreateStep.java | 33 +- .../ui/SciProjectStepsConstants.java | 2 +- .../sciproject/ui/create-sciproject.xhtml | 107 +++++ .../ui/sciproject-basic-properties.xhtml | 450 +++++++++--------- .../sciproject/ui/SciProjectBundle.properties | 17 + .../ui/SciProjectBundle_de.properties | 17 + scicms-bundle-devel-wildfly/pom.xml | 14 + .../themes/librecms-devel/images/libreccm.png | Bin 0 -> 58716 bytes .../themes/librecms-devel/settings.properties | 2 + .../themes/librecms-devel/styles/style.css | 73 +++ .../librecms-devel/templates/default.html.ftl | 62 +++ .../librecms-devel/templates/footer.html.ftl | 19 + .../librecms-devel/templates/header.html.ftl | 1 + .../templates/login/login-form.html.ftl | 35 ++ .../login/login-password-recovered.html.ftl | 15 + .../login/login-recover-password.html.ftl | 27 ++ .../templates/logout/loggedout.html.ftl | 13 + .../librecms-devel/templates/main.html.ftl | 25 + .../librecms-devel/texts/labels.properties | 5 + .../librecms-devel/theme-bundle.properties | 3 + .../themes/librecms-devel/theme-index.json | 95 ++++ .../themes/librecms-devel/theme.json | 144 ++++++ 24 files changed, 966 insertions(+), 242 deletions(-) create mode 100644 sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectAuthoringSteps.java create mode 100644 sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/create-sciproject.xhtml create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/images/libreccm.png create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/settings.properties create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/styles/style.css create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/default.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/footer.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/header.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/login/login-form.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/login/login-password-recovered.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/login/login-recover-password.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/logout/loggedout.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/templates/main.html.ftl create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/texts/labels.properties create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/theme-bundle.properties create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/theme-index.json create mode 100644 scicms-bundle-devel-wildfly/src/main/resources/themes/librecms-devel/theme.json diff --git a/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/SciProject.java b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/SciProject.java index 352418f..d000e1a 100644 --- a/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/SciProject.java +++ b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/SciProject.java @@ -11,6 +11,11 @@ import org.hibernate.envers.Audited; import org.libreccm.l10n.LocalizedString; import org.librecms.contentsection.ContentItem; import org.librecms.contenttypes.ContentTypeDescription; +import org.librecms.ui.contentsections.documents.MvcAuthoringKit; +import org.scientificcms.contenttypes.sciproject.ui.SciProjectCreateStep; +import org.scientificcms.contenttypes.sciproject.ui.SciProjectDescriptionStep; +import org.scientificcms.contenttypes.sciproject.ui.SciProjectFundingStep; +import org.scientificcms.contenttypes.sciproject.ui.SciProjectPropertiesStep; import java.io.Serializable; import java.time.LocalDate; @@ -44,6 +49,14 @@ import static org.scientificcms.contenttypes.sciproject.SciProjectConstants.*; labelBundle = "org.scientificcms.contenttypes.SciProject", descriptionBundle = "org.scientificcms.contenttypes.SciProject" ) +@MvcAuthoringKit( + createStep = SciProjectCreateStep.class, + authoringSteps = { + SciProjectPropertiesStep.class, + SciProjectDescriptionStep.class, + SciProjectFundingStep.class + } +) @NamedQueries({ @NamedQuery( name = "SciProject.findWhereBeginIsBefore", @@ -144,6 +157,7 @@ public class SciProject extends ContentItem implements Serializable { public SciProject() { super(); + shortDescription = new LocalizedString(); contacts = new ArrayList<>(); members = new ArrayList<>(); } diff --git a/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectAuthoringSteps.java b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectAuthoringSteps.java new file mode 100644 index 0000000..5ce0ac4 --- /dev/null +++ b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectAuthoringSteps.java @@ -0,0 +1,35 @@ +package org.scientificcms.contenttypes.sciproject.ui; + +import org.librecms.ui.contentsections.documents.MvcAuthoringSteps; + +import java.util.Set; + +import javax.enterprise.context.ApplicationScoped; + +/** + * + * @author Jens Pelzetter + */ +@ApplicationScoped +public class SciProjectAuthoringSteps implements MvcAuthoringSteps { + + @Override + public Set> getClasses() { + return Set.of( + SciProjectPropertiesStep.class, + SciProjectDescriptionStep.class, + SciProjectFundingStep.class + ); + } + + @Override + public Set> getResourceClasses() { + return Set.of( + SciProjectDescriptionStepService.class, + SciProjectFundingStepService.class + ); + } + + + +} diff --git a/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectCreateStep.java b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectCreateStep.java index 0e758cd..e789cec 100644 --- a/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectCreateStep.java +++ b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectCreateStep.java @@ -352,26 +352,27 @@ public class SciProjectCreateStep && formParams.get(FORM_PARAM_END) != null && formParams.get(FORM_PARAM_END).length > 0) { endParam = formParams.get(FORM_PARAM_END)[0]; - if (endParam != null) { - try { - return LocalDate.parse( - endParam, - DateTimeFormatter.ISO_DATE - ); - } catch (DateTimeParseException ex) { - addMessage( - "danger", - globalizationHelper - .getLocalizedTextsUtil(getBundle()) - .getText("createstep.enddate.error.malformed") - ); - return null; - } - } else { + if (endParam == null || endParam.isBlank()) { + return null; + } + + try { + return LocalDate.parse( + endParam, + DateTimeFormatter.ISO_DATE + ); + } catch (DateTimeParseException ex) { + addMessage( + "danger", + globalizationHelper + .getLocalizedTextsUtil(getBundle()) + .getText("createstep.enddate.error.malformed") + ); return null; } } else { return null; } } + } diff --git a/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectStepsConstants.java b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectStepsConstants.java index 42cab7e..5910dad 100644 --- a/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectStepsConstants.java +++ b/sci-types-project/src/main/java/org/scientificcms/contenttypes/sciproject/ui/SciProjectStepsConstants.java @@ -30,5 +30,5 @@ public final class SciProjectStepsConstants { } public static final String BUNDLE - = "org.scientificcms.contentypes.sciproject.ui.SciProjectBundle"; + = "org.scientificcms.contenttypes.sciproject.ui.SciProjectBundle"; } \ No newline at end of file diff --git a/sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/create-sciproject.xhtml b/sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/create-sciproject.xhtml new file mode 100644 index 0000000..e55d492 --- /dev/null +++ b/sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/create-sciproject.xhtml @@ -0,0 +1,107 @@ +]> + + + + +
+

#{SciProjectMessageBundle['createstep.title']}

+ + + + + + +
+ + + + + + + + + + + + + + + + #{SciProjectMessageBundle['createform.cancel']} + + + + +
+ +
+ +
+ + diff --git a/sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/sciproject-basic-properties.xhtml b/sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/sciproject-basic-properties.xhtml index 85042f6..fdce987 100644 --- a/sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/sciproject-basic-properties.xhtml +++ b/sci-types-project/src/main/resources/WEB-INF/views/org/scientificcms/contenttypes/sciproject/ui/sciproject-basic-properties.xhtml @@ -5,46 +5,145 @@ xmlns:libreccm="http://xmlns.jcp.org/jsf/composite/components/libreccm" xmlns:ui="http://xmlns.jcp.org/jsf/facelets"> - - + - -

#{SciProjectMessageBundle.getMessage('basicproperties.header', [SciProjectPropertiesStep.name])}

+ +

#{SciProjectMessageBundle.getMessage('basicproperties.header', [SciProjectPropertiesStep.name])}

+ +

#{SciProjectMessageBundle['basicproperties.name.header']}

+
+
#{SciProjectPropertiesStep.name}
+ + + +
-

#{SciProjectMessageBundle['basicproperties.name.header']}

-
-
#{SciProjectPropertiesStep.name}
+ + + + + + +
+

#{SciProjectMessageBundle['basicproperties.begin.header']}

- -
- - +
+
+
#{SciProjectMessageBundle['basicproperties.begin.label']}
+
+ #{SciProjectPropertiesStep.begin} +
+
- - - - -
-

#{SciProjectMessageBundle['basicproperties.begin.header']}

- -
-
-
#{SciProjectMessageBundle['basicproperties.begin.label']}
-
- #{SciProjectPropertiesStep.begin} -
-
-