This commit is contained in:
Maxime Dagnicourt
2008-02-22 13:39:37 +00:00
parent 4a99c6b959
commit 12c8adc4e0
9 changed files with 461 additions and 78 deletions

View File

@@ -6,7 +6,7 @@
<script type='text/javascript' src='./javascripts/scriptaculous.js'></script>
<script type='text/javascript' src='./dwr/engine.js'></script>
<script type='text/javascript' src='./dwr/util.js'></script>
<script type='text/javascript' src='./dwr/interface/DispatchArticlesJS.js'></script>
<script type='text/javascript' src='./dwr/interface/DelegateArticlesJS.js'></script>
<script type="text/javascript">
var selectedArticleId;
@@ -54,8 +54,8 @@
//$(elementId).insert(elem);
//listes
//DispatchArticlesJS.sayHello(articleId,retour);
DispatchArticlesJS.getMembersWithoutTheArticle(articleId,fillListMembers);
DispatchArticlesJS.getMembersWithTheArticle(articleId,fillListArticleMembers);
DelegateArticlesJS.getRefereesWithoutTheArticle(articleId,fillListReferee);
DelegateArticlesJS.getRefereesWithTheArticle(articleId,fillListArticleReferee);
//new Effect.SlideDown('dispatcher'+articleId);
@@ -70,31 +70,29 @@
alert(data);
}
function fillListArticleMembers(data){
function fillListArticleReferee(data){
for (var i = 0; i < data.length; i++) {
var member = data[i];
var value= member.firstName+" "+member.lastName +' nb articles:' + member.nbArticles
+ " preferences:"+ member.preference;
var value= member.firstName+" "+member.lastName;
var elem = new Element('div',
{'class':'dynamicListItem','id':member.login,
"style":"border:1px"}).update(value);
$('membersArticleList'+articleId).insert(elem);
$('refereesArticleList'+articleId).insert(elem);
elem.observe('click', function(event){
select(Event.element(event));
});
}
}
function fillListMembers(data){
function fillListReferee(data){
for (var i = 0; i < data.length; i++) {
var member = data[i];
var value= member.firstName+" "+member.lastName +' nb articles:' + member.nbArticles
+ " preferences:"+ member.preference;
var value= member.firstName+" "+member.lastName;
var elem = new Element('div',
{'class':'dynamicListItem','id':member.login,
"style":"border:1px"}).update(value);
$('membersList'+articleId).insert(elem);
$('refereesList'+articleId).insert(elem);
elem.observe('click', function(event){
select(Event.element(event));
});
@@ -112,10 +110,10 @@
}
function removeRemote() {
var itemsToRemove = $('membersList'+articleId).select('div.selected');
var itemsToRemove = $('refereesList'+articleId).select('div.selected');
var membersId = itemsToRemove.pluck('id');
//var articleId = $('articleId').value;
DispatchArticlesJS.removeMembers(membersId, articleId, remove);
DelegateArticlesJS.removeMembers(membersId, articleId, remove);
}
function remove() {
@@ -128,21 +126,21 @@
for (var i = 0; i < itemsToRemove.length; i++) {
item = itemsToRemove[i];
item.removeClassName('selected');
$('membersList'+articleId).insert(item);
$('refereesList'+articleId).insert(item);
}
}
}
function addRemote(){
var itemsToAdd = $('membersList'+articleId).select('div.selected');
var membersId = itemsToAdd.pluck('id');
var itemsToAdd = $('refereesList'+articleId).select('div.selected');
var refereeId = itemsToAdd.pluck('id');
//var articleId = $('articleId').value;
DispatchArticlesJS.addMembers(membersId, articleId, add());
DelegateArticlesJS.addReferee(membersId, articleId, add());
}
function add() {
var itemsToAdd = $('membersList'+articleId).select('div.selected');
var itemsToAdd = $('refereeList'+articleId).select('div.selected');
//suppression dans la premi<6D>re liste
itemsToAdd.invoke('remove');
@@ -151,15 +149,15 @@
for (var i = 0; i < itemsToAdd.length; i++) {
item = itemsToAdd[i];
item.removeClassName('selected');
$('membersArticleList'+articleId).insert(item);
$('refereesArticleList'+articleId).insert(item);
}
}
}
function removeAll(artId){
var itemsToRemove = $('membersArticleList'+artId).select('div.dynamicListItem');
var itemsToRemove = $('refereesArticleList'+artId).select('div.dynamicListItem');
itemsToRemove.invoke('remove');
itemsToRemove = $('membersList'+artId).select('div.dynamicListItem');
itemsToRemove = $('refereesList'+artId).select('div.dynamicListItem');
itemsToRemove.invoke('remove');
}
</script>
@@ -175,32 +173,41 @@
</p>
<c:forEach var="article" items="${articles}">
<div class=" conferenceBloc cbb">
<div style="border:1px solid orange;">
<div id="article${article.id}">
<div id="title${article.id}" onclick="showDetail(${article.id})">
<h2>
title : ${article.title}
<br/>theme: ${article.topic}
<br/>main author: ${article.mainAuthor.firstName}{article.mainAuthor.lastName}
<a href="${article.URL_article}">download the article</a>
</h2>
<table style="width:100%;text-align:center;">
<tr>
<td><img src="./images/cc-wp-64x64.png"></td>
<td>title : ${article.title}
<br/>theme: ${article.topic}
<br/>main author: ${article.mainAuthor.firstName}${article.mainAuthor.lastName}
<c:if test="${!empty article.secondaryAuthors}">
<br/>secondaries authors:
<c:forEach var="author" items="${article.secondaryAuthors}">
<br/>${author}
</c:forEach>
</c:if>
</td>
<td><a href="${article.URL_article}">download the article</a></td>
</tr>
</table>
</div>
<div id='dispatcher${article.id}' style="display:none;">
<table style="width:100%;">
<tr><td>
<h1><fmt:message key="members.List1"/></h1>
<h1><fmt:message key="delegateArticles.list1"/></h1>
<div id="membersList${article.id}" style="border:1px solid black; max-height:150px;overflow:auto;">
<div id="refereesList${article.id}" style="border:1px solid black; max-height:150px;overflow:auto;">
</div>
</td><td>
<input type="button" id="addButton" value="add>>>" onclick="addRemote()"/><br/>
<input type="button" id="removeButton" value="<<<remove" onclick="removeRemote()"/>
</td><td>
<h1><fmt:message key="members.List2"/></h1>
<div id="membersArticleList${article.id}" style="border:1px solid black; max-height:150px;overflow:auto;">
<h1><fmt:message key="delegateArticles.list2"/></h1>
<div id="refereesArticleList${article.id}" style="border:1px solid black; max-height:150px;overflow:auto;">
</div>
</td></tr>
</table>