From 78edfde2aa65100a7d5b2d2cfe1095af27b5edc4 Mon Sep 17 00:00:00 2001 From: Christian Corsano Date: Tue, 12 Feb 2008 12:34:04 +0000 Subject: [PATCH] =?UTF-8?q?Corrections=20:=20Choose=20conference=20(re)mar?= =?UTF-8?q?che=20...=20merci=20de=20ne=20plus=20faire=20de=20modifs=20du?= =?UTF-8?q?=20genre=20de=20la=20suppression=20de=20AddOrUpdatePreference?= =?UTF-8?q?=20sans=20en=20discuter=20avec=20les=20personnes=20concern?= =?UTF-8?q?=C3=A9es=20Correction=20de=20submitArticle=20quand=20aucun=20fi?= =?UTF-8?q?chier=20n'est=20envoy=C3=A9=20Autres=20modifications=20mineures?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WEB-INF/classes/messages.properties | 1 + .../WebContent/WEB-INF/decorators/include.jsp | 1 + .../WebContent/WEB-INF/jsp/choosePreference.jsp | 6 ++---- .../WEB-INF/jsp/submissionArticle.jsp | 7 ++++--- .../controller/ChoosePreferenceController.java | 15 +++++++-------- .../yacos/web/PCmember/form/FormPreference.java | 9 +++++++++ .../author/controller/SArticleController.java | 17 ++++++++++++----- .../controller/AddConferenceController.java | 5 ----- 8 files changed, 36 insertions(+), 25 deletions(-) diff --git a/YACOSWeb/WebContent/WEB-INF/classes/messages.properties b/YACOSWeb/WebContent/WEB-INF/classes/messages.properties index 412aa16..b791527 100644 --- a/YACOSWeb/WebContent/WEB-INF/classes/messages.properties +++ b/YACOSWeb/WebContent/WEB-INF/classes/messages.properties @@ -97,6 +97,7 @@ form.submission.listauthor=Article's author form.submission.mainauthor=Main author form.submission.secondaryauthor=Secondary authors form.submission.file=File +form.submitArticle.noFile=You have to send the file of the article. form.addConference.invitationsHeader=Invitations diff --git a/YACOSWeb/WebContent/WEB-INF/decorators/include.jsp b/YACOSWeb/WebContent/WEB-INF/decorators/include.jsp index a89c639..8f6976c 100644 --- a/YACOSWeb/WebContent/WEB-INF/decorators/include.jsp +++ b/YACOSWeb/WebContent/WEB-INF/decorators/include.jsp @@ -1,4 +1,5 @@ <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> <%@ taglib prefix="authz" uri="http://acegisecurity.org/authz" %> diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/choosePreference.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/choosePreference.jsp index de239aa..496319a 100644 --- a/YACOSWeb/WebContent/WEB-INF/jsp/choosePreference.jsp +++ b/YACOSWeb/WebContent/WEB-INF/jsp/choosePreference.jsp @@ -8,11 +8,9 @@

- - - - + + diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/submissionArticle.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/submissionArticle.jsp index 54bc9a3..0c760cb 100644 --- a/YACOSWeb/WebContent/WEB-INF/jsp/submissionArticle.jsp +++ b/YACOSWeb/WebContent/WEB-INF/jsp/submissionArticle.jsp @@ -14,11 +14,11 @@
-

+

-

+

-

+



@@ -44,6 +44,7 @@

+
File diff --git a/YACOSWeb/src/org/yacos/web/PCmember/controller/ChoosePreferenceController.java b/YACOSWeb/src/org/yacos/web/PCmember/controller/ChoosePreferenceController.java index d95c943..dff940d 100644 --- a/YACOSWeb/src/org/yacos/web/PCmember/controller/ChoosePreferenceController.java +++ b/YACOSWeb/src/org/yacos/web/PCmember/controller/ChoosePreferenceController.java @@ -44,19 +44,16 @@ public class ChoosePreferenceController extends SimpleFormController { getServletContext().setAttribute("articleList", articleList); + User currentUser = SessionService.getInstance().getCurrentUser(); // TODO : mock object, replace with real user management - User toto = userManager.getUser("toto"); - if(toto == null){ - toto = userManager.addUser("toto",User.hashPassword("toto"), "Toto", "Toto", "Toto corp.", "toto@totocorp.com"); - } ArrayList preferencesList = new ArrayList(); Preference pref; for(Article article : articleList){ - pref = articleManager.getPreferenceForUserAndArticle(article.getId(), toto.getLogin()); + pref = articleManager.getPreferenceForUserAndArticle(article.getId(), currentUser.getLogin()); if(pref == null){ pref = new Preference(); pref.setArticle(article); - pref.setPcMember(toto); + pref.setPcMember(currentUser); pref.setPreferenceType(Preference.PreferenceType.INDIFFERENT); } preferencesList.add(pref); @@ -78,15 +75,17 @@ public class ChoosePreferenceController extends SimpleFormController { List listPreference=fp.getPreferences(); for(Preference preference : listPreference){ - articleManager.addPreference(preference.getArticle().getId(), + articleManager.addOrUpdatePreference(preference.getArticle().getId(), preference.getPcMember().getLogin(), preference.getPreferenceType()); } Map model = new HashMap(); model.put("message", "preference.ok"); - return new ModelAndView(new RedirectView(getSuccessView()), model); + return new ModelAndView(new RedirectView(getSuccessView()), "model", model); } + + public IArticleManager getArticleManager() { return articleManager; diff --git a/YACOSWeb/src/org/yacos/web/PCmember/form/FormPreference.java b/YACOSWeb/src/org/yacos/web/PCmember/form/FormPreference.java index b7db9a2..c81b5d6 100644 --- a/YACOSWeb/src/org/yacos/web/PCmember/form/FormPreference.java +++ b/YACOSWeb/src/org/yacos/web/PCmember/form/FormPreference.java @@ -9,6 +9,7 @@ import org.yacos.core.article.Preference; public class FormPreference { private List preferences = new ArrayList(); + private String successMessage; public List getPreferences() { @@ -19,4 +20,12 @@ public class FormPreference { { this.preferences = preferences; } + + public String getSuccessMessage() { + return successMessage; + } + + public void setSuccessMessage(String successMessage) { + this.successMessage = successMessage; + } } diff --git a/YACOSWeb/src/org/yacos/web/author/controller/SArticleController.java b/YACOSWeb/src/org/yacos/web/author/controller/SArticleController.java index 721373b..6c0502f 100644 --- a/YACOSWeb/src/org/yacos/web/author/controller/SArticleController.java +++ b/YACOSWeb/src/org/yacos/web/author/controller/SArticleController.java @@ -5,11 +5,9 @@ import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; - import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.validation.BindException; @@ -59,14 +57,23 @@ public class SArticleController extends SimpleFormController { listSecondaryAuthor, Article.State.SUMMARY, conf.getId()); if(newArticle==null){ - return new ModelAndView(new RedirectView(getFormView())); + errors.reject("article.errors.didNotSave"); + try { + return showForm(request, response, errors); + } catch (Exception e) { + e.printStackTrace(); + } } try { MultipartFile file = ((FormSubmission) command).getFile(); - if (file == null) { + if (file == null || file.isEmpty()) { errors.rejectValue("file", "form.submitArticle.noFile"); - return new ModelAndView(new RedirectView(getFormView())); + try { + return showForm(request, response, errors); + } catch (Exception e) { + e.printStackTrace(); + } } else { diff --git a/YACOSWeb/src/org/yacos/web/chairman/controller/AddConferenceController.java b/YACOSWeb/src/org/yacos/web/chairman/controller/AddConferenceController.java index 6951ce3..4e3d9c7 100644 --- a/YACOSWeb/src/org/yacos/web/chairman/controller/AddConferenceController.java +++ b/YACOSWeb/src/org/yacos/web/chairman/controller/AddConferenceController.java @@ -10,14 +10,11 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - -import org.acegisecurity.util.UrlUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.mail.MailSendException; import org.springframework.validation.BindException; import org.springframework.validation.Errors; -import org.springframework.web.context.support.WebApplicationContextUtils; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndViewDefiningException; import org.springframework.web.servlet.mvc.AbstractWizardFormController; @@ -34,8 +31,6 @@ import org.yacos.web.chairman.validation.ConferenceValidator; import org.yacos.web.system.controller.MailSenderService; import org.yacos.web.system.session.SessionService; -import com.sun.mail.smtp.SMTPAddressFailedException; - public class AddConferenceController extends AbstractWizardFormController { protected final Log logger = LogFactory.getLog(getClass());