YACOSTest: Correction du à l'ajout de abstractText dans article
YACOSWeb: Modification d'un article qui marche (réenvoie d'un fichier ou pas)
This commit is contained in:
@@ -33,7 +33,7 @@
|
||||
</ul>
|
||||
</td>
|
||||
<td><a id="articleURL${i.index}" title="Download" href="<c:url value="/download.htm"><c:param name="articleId" value="${article.id}"/></c:url>"><img src="./images/cc-download_manager-128x128.png" alt="Download" /></a></td>
|
||||
<td><a id="modifyArticle${i.index}" title="Modify" href="<c:url value="/submissionArticle.htm"><c:param name="action" value="modify"/><c:param name="articleID" value="${article.id}"/></c:url>"><img src="./images/cc-button_ok-128x128.png" alt="Modify" /></a></td>
|
||||
<td><a id="modifyArticle${i.index}" title="Modify" href="<c:url value="/submissionArticle.htm"><c:param name="action" value="modify"/><c:param name="articleID" value="${article.id}"/></c:url>"><img src="./images/cc-kedit-128x128.png" alt="Modify" /></a></td>
|
||||
<td><a id="suppressArticle${i.index}" title="Delete" href="javascript:deleteArticle(${article.id});"><img src="./images/cc-button_cancel-128x128.png" alt="Delete"/></a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
@@ -2,74 +2,78 @@
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<script type='text/javascript' src='./javascripts/prototype.js'></script>
|
||||
<script type='text/javascript' src='./javascripts/scriptaculous.js'></script>
|
||||
<script type='text/javascript' src='./javascripts/effects.js'></script>
|
||||
<script type='text/javascript' src='./javascripts/yacos/submissionArticle.js'></script>
|
||||
<script type='text/javascript' src='./javascripts/prototype.js'></script>
|
||||
<script type='text/javascript' src='./javascripts/scriptaculous.js'></script>
|
||||
<script type='text/javascript' src='./javascripts/effects.js'></script>
|
||||
<script type='text/javascript'
|
||||
src='./javascripts/yacos/submissionArticle.js'></script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h4 class="title">
|
||||
<c:choose>
|
||||
<h4 class="title"><c:choose>
|
||||
<c:when test="${param['action'] eq 'modify'}">
|
||||
<fmt:message key="submission.modify" />
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<fmt:message key="submission.title" />
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</h4>
|
||||
</c:choose></h4>
|
||||
|
||||
<form:form method="post" enctype="multipart/form-data" commandName="submissionArticle">
|
||||
<fieldset>
|
||||
|
||||
<form:label path="title"><fmt:message key="form.submission.article.title" /></form:label> <form:input path="title"/> <span class="formError"><form:errors path="title"/></span> <br/><br />
|
||||
|
||||
<form:label path="theme"><fmt:message key="form.submission.article.theme" /></form:label> <form:input path="theme"/> <span class="formError"><form:errors path="theme"/></span><br/><br />
|
||||
|
||||
<form:label path="abstractText"><fmt:message key="form.submission.article.abstractText" /></form:label> <form:textarea path="abstractText" /><span class="formError"><form:errors path="abstractText"/></span><br/><br/>
|
||||
|
||||
<hr/> <br/>
|
||||
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
|
||||
<label for="listauthor"><fmt:message key="form.submission.listauthor" /></label> <br /><br />
|
||||
<form:label path="mainauthor"><fmt:message key="form.submission.mainauthor" /></form:label>: <b>${currentUser.firstName} ${currentUser.lastName}</b>
|
||||
<br/> <br/>
|
||||
<label for="newSecondaryAuthor"><fmt:message key="form.submission.secondaryauthor" /></label>
|
||||
<input id="newSecondaryAuthorInput" type="text" name="newSecondaryAuthor" />
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="formLabel"><fmt:message key="form.submission.article.title" /></td>
|
||||
<td><form:input path="title" /> <span class="formError"><form:errors path="title" /></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="formLabel"><fmt:message key="form.submission.article.theme" /></td>
|
||||
<td><form:input path="theme" /> <span class="formError"><form:errors path="theme" /></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="formLabel"><fmt:message key="form.submission.article.abstractText" /></td>
|
||||
<td><form:textarea path="abstractText" cols="60" rows="10" /><span class="formError"><form:errors path="abstractText" /></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="formLabel"><fmt:message key="form.submission.mainauthor" />:</td>
|
||||
<td><b>${currentUser.firstName} ${currentUser.lastName}</b></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="formLabel"><fmt:message key="form.submission.secondaryauthor" /></td>
|
||||
<td><input id="newSecondaryAuthorInput" type="text" name="newSecondaryAuthor" />
|
||||
<input type="button" id="addSecondaryButton" name="addSecondary" value="<fmt:message key="button.add" />">
|
||||
|
||||
<div id="secondaryAuthorList" class="dynamicList">
|
||||
<div class="dynamicListHeader">
|
||||
<fmt:message key="form.submission.secondaryauthor" />
|
||||
</div>
|
||||
<div class="dynamicListHeader"><fmt:message key="form.submission.secondaryauthor" /></div>
|
||||
<c:if test="${param['action'] eq 'modify'}">
|
||||
<c:forEach items="${listSecondaryAuthors}" var="secAuthor" varStatus="i">
|
||||
<div class="dynamicListItem" style="height: 0px; width: 0px;" id="liste[${i.index}]">${secAuthor}<input type="hidden" id="liste[${i.index}]" name="liste[${i.index}]" value="${secAuthor}"/></div>
|
||||
<div class="dynamicListItem" style="height: 0px; width: 0px;"
|
||||
id="liste[${i.index}]">${secAuthor}<input type="hidden"
|
||||
id="liste[${i.index}]" name="liste[${i.index}]"
|
||||
value="${secAuthor}" /></div>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</div>
|
||||
<input type="button" id="removeSecondaryButton" name="removeSecondary" value="<fmt:message key="button.removeSelected" />"/>
|
||||
<input type="button" id="removeSecondaryButton" name="removeSecondary" value="<fmt:message key="button.removeSelected" />" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="formLabel">File</td>
|
||||
<td><input type="file" name="file" /><div class="formError"><form:errors path="file" /></div></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td><input type="reset" value="<fmt:message key="button.reset" />" />
|
||||
<input type="submit" value="<fmt:message key="button.OK" />" /></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
|
||||
<br /><br />
|
||||
</fieldset>
|
||||
<hr />
|
||||
<fieldset>
|
||||
<br />
|
||||
<div class="formError"><form:errors path="file"/></div>
|
||||
File <input type="file" name="file"/>
|
||||
|
||||
|
||||
<br /><br />
|
||||
<input type="reset" value="<fmt:message key="button.reset" />"/>
|
||||
<input type="submit" value="<fmt:message key="button.OK" />"/> <br/><br/>
|
||||
</fieldset>
|
||||
</form:form>
|
||||
|
||||
<a href="<c:url value="main.htm"/>">Home</a>
|
||||
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
BIN
YACOSWeb/WebContent/images/cc-kedit-128x128.png
Normal file
BIN
YACOSWeb/WebContent/images/cc-kedit-128x128.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 9.8 KiB |
@@ -44,6 +44,7 @@ public class SArticleController extends SimpleFormController {
|
||||
|
||||
String title = ((FormSubmission) command).getTitle();
|
||||
String theme = ((FormSubmission) command).getTheme();
|
||||
String abstractText = ((FormSubmission) command).getAbstractText();
|
||||
|
||||
ArrayList<String> listSecondaryAuthor = new ArrayList<String>();
|
||||
// Removes null entries from the list
|
||||
@@ -53,6 +54,10 @@ public class SArticleController extends SimpleFormController {
|
||||
}
|
||||
}
|
||||
|
||||
String action = request.getParameter("action");
|
||||
if (action == null || action.equals(""))
|
||||
{
|
||||
|
||||
String nomFile="";
|
||||
|
||||
try {
|
||||
@@ -69,7 +74,7 @@ public class SArticleController extends SimpleFormController {
|
||||
|
||||
// Creates the article
|
||||
Article newArticle = articleManager.addArticle(
|
||||
title, theme, nomFile, user.getLogin(),
|
||||
title, theme, abstractText, nomFile, user.getLogin(),
|
||||
listSecondaryAuthor, Article.State.SUBMITED, conf.getId());
|
||||
|
||||
if(newArticle==null){
|
||||
@@ -105,6 +110,53 @@ public class SArticleController extends SimpleFormController {
|
||||
|
||||
// The role author might have been added, refresh the credentials
|
||||
SessionService.getInstance().refreshAuthentication();
|
||||
}
|
||||
else if (action.equals("modify")) {
|
||||
String articleID = request.getParameter("articleID");
|
||||
|
||||
try {
|
||||
Integer id = new Integer(articleID);
|
||||
|
||||
// TODO : v<>rifier que l'id de l'article appartient <20> l'auteur... vive les GET...
|
||||
|
||||
Article old = articleManager.getArticle(id);
|
||||
old.setTitle(title);
|
||||
old.setTopic(theme);
|
||||
old.setSecondaryAuthors(listSecondaryAuthor);
|
||||
old.setAbstractText(abstractText);
|
||||
|
||||
MultipartFile file = ((FormSubmission) command).getFile();
|
||||
if (file == null || file.isEmpty()) {
|
||||
articleManager.updateArticle(old);
|
||||
}
|
||||
else {
|
||||
byte b[] = file.getBytes();
|
||||
|
||||
String path = "conference"+conf.getId()+"/";
|
||||
(new File(downloadDirPath+path)).mkdirs();
|
||||
path += old.getId()+"_"+file.getOriginalFilename();
|
||||
File uploadedFile = new File(downloadDirPath+path);
|
||||
|
||||
FileOutputStream fos = new FileOutputStream(uploadedFile);
|
||||
|
||||
fos.write(b);
|
||||
fos.close();
|
||||
|
||||
old.setURL_article(path);
|
||||
articleManager.updateArticle(old);
|
||||
}
|
||||
} catch (NumberFormatException e) {
|
||||
throw new ModelAndViewDefiningException(new ModelAndView("404error"));
|
||||
} catch (FileNotFoundException e) {
|
||||
System.out.println(e);
|
||||
} catch (IOException e) {
|
||||
System.out.println(e);
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
throw new ModelAndViewDefiningException(new ModelAndView("404error"));
|
||||
}
|
||||
|
||||
return new ModelAndView(new RedirectView(getSuccessView()));
|
||||
}
|
||||
@@ -132,10 +184,7 @@ public class SArticleController extends SimpleFormController {
|
||||
|
||||
FormSubmission myArticle = new FormSubmission();
|
||||
|
||||
|
||||
// FIXME : stocker l'abstract texte ds la BDD... et le r<>cup apr<70>s...
|
||||
//myArticle.setAbstractText();
|
||||
|
||||
myArticle.setAbstractText(a.getAbstractText());
|
||||
myArticle.setTitle(a.getTitle());
|
||||
myArticle.setListe(a.getSecondaryAuthors());
|
||||
myArticle.setTheme(a.getTopic());
|
||||
|
||||
@@ -424,7 +424,6 @@ public class AddConferenceController extends AbstractWizardFormController {
|
||||
String action = request.getParameter("action");
|
||||
if (action == null || action.equals("")) {
|
||||
|
||||
|
||||
Conference conf = null;
|
||||
|
||||
try {
|
||||
@@ -484,7 +483,7 @@ public class AddConferenceController extends AbstractWizardFormController {
|
||||
conferenceManager.addRole(RoleType.CHAIRMAN, SessionService.getInstance().getCurrentUserLogin(), conf.getId());
|
||||
// Refresh the roles to take into account the chairman credentials
|
||||
SessionService.getInstance().refreshAuthentication();
|
||||
} else {
|
||||
} else if (action.equals("modify")) {
|
||||
Conference conf = SessionService.getInstance().getCurrentConference();
|
||||
conf.setTitle(conference.getTitle());
|
||||
conf.setDescription(conference.getDescription());
|
||||
|
||||
Reference in New Issue
Block a user