Gestionnaire de telechargement Liste des auteurs secondaires Quelques corrections javascripts
138 lines
4.3 KiB
Plaintext
138 lines
4.3 KiB
Plaintext
<%@ include file="/WEB-INF/decorators/include.jsp"%>
|
|
|
|
<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>
|
|
<style type="text/css">
|
|
.dynamicList {
|
|
display: table;
|
|
border-collapse: collapse;
|
|
min-width: 200px;
|
|
max-height: 200px;
|
|
overflow: scroll;
|
|
}
|
|
|
|
.dynamicList > * {
|
|
display: table-row;
|
|
border: thin solid #f57627;
|
|
padding:3px;
|
|
}
|
|
|
|
.dynamicListHeader {
|
|
background-color: #f57627;
|
|
}
|
|
|
|
.selected {
|
|
background-color: #fea752;
|
|
}
|
|
</style>
|
|
<script language="JavaScript">
|
|
|
|
var SecondaryAuthorManager = Class.create({
|
|
lastRef: 0,
|
|
initialize: function(buttonAdd,buttonRemove,inputField){
|
|
this.buttonAdd = buttonAdd;
|
|
this.buttonRemove = buttonRemove;
|
|
this.inputField = inputField;
|
|
$(buttonAdd).observe("click",this.AddSecondaryAuthor.bind(this));
|
|
$(buttonRemove).observe("click",this.RemoveSecondaryAuthor.bind(this));
|
|
$(inputField).observe("keypress", this.KeyPressHandler.bindAsEventListener(this));
|
|
},
|
|
SelectSecondaryAuthor: function(event){
|
|
var item = event.element();
|
|
if(item.hasClassName('selected')){
|
|
item.removeClassName('selected');
|
|
} else {
|
|
item.addClassName('selected');
|
|
}
|
|
},
|
|
RemoveSecondaryAuthor: function() {
|
|
var itemsToRemove = $('secondaryAuthorList').select('div.selected');
|
|
itemsToRemove.invoke('remove');
|
|
},
|
|
KeyPressHandler: function(event){
|
|
switch(event.keyCode){
|
|
case Event.KEY_RETURN:
|
|
this.AddSecondaryAuthor();
|
|
event.stop();
|
|
return false;
|
|
}
|
|
},
|
|
AddSecondaryAuthor: function() {
|
|
var ref = this.lastRef++;
|
|
var elemName = "liste["+ref+"]";
|
|
var value = $('newSecondaryAuthorInput').value;
|
|
var hidden = new Element('input',{'id':elemName,'name':elemName,'type':'hidden','value':value});
|
|
var elem = new Element('div',
|
|
{ 'class':'dynamicListItem',
|
|
'style':'display:none;height:0px;width:0px;',
|
|
'id':elemName}).update(value).insert(hidden);
|
|
elem.observe('click', this.SelectSecondaryAuthor.bindAsEventListener());
|
|
$('secondaryAuthorList').insert(elem);
|
|
$(this.inputField).clear();
|
|
Effect.Appear(elemName);
|
|
}
|
|
});
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
|
|
|
|
<h4 class="title"><fmt:message key="submission.title" /></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"/> <font color="red"><form:errors path="title"/></font> <br/><br />
|
|
|
|
<form:label path="theme"><fmt:message key="form.submission.article.theme" /></form:label> <form:input path="theme"/> <font color="red"><form:errors path="theme"/></font><br/><br />
|
|
|
|
<form:label path="abstractText"><fmt:message key="form.submission.article.abstractText" /></form:label> <form:textarea path="abstractText" /><font color="red"><form:errors path="abstractText"/></font><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" />
|
|
<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>
|
|
<input type="button" id="removeSecondaryButton" name="removeSecondary" value="<fmt:message key="button.removeSelected" />"/>
|
|
|
|
<script type="text/javascript">
|
|
new SecondaryAuthorManager('addSecondaryButton','removeSecondaryButton','newSecondaryAuthorInput');
|
|
</script>
|
|
|
|
<br /><br />
|
|
</fieldset>
|
|
<hr />
|
|
<fieldset>
|
|
<br />
|
|
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>
|
|
</html>
|