Les anciens critères sont affichés.
Les dates sont validées. Policy failures: Code warning - failed on resource ConferenceValidator.java. Reason: Class is a raw type. References to generic type Class<T> should be parameterized, line 1 Override reason: haha
This commit is contained in:
@@ -11,14 +11,19 @@
|
|||||||
<script type='text/javascript'>
|
<script type='text/javascript'>
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
fillTable();
|
//fillTable2();
|
||||||
|
//fillTable();
|
||||||
|
setTimeout("fillTable2()", 500);
|
||||||
|
setTimeout("fillTable()", 500);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var peopleCache = { };
|
var peopleCache = { };
|
||||||
|
var peopleCache2 = { };
|
||||||
var viewed = -1;
|
var viewed = -1;
|
||||||
|
|
||||||
function fillTable() {
|
function fillTable() {
|
||||||
AddCriteriaJS.getAllCriteria(function(criteria) {
|
AddCriteriaJS.getCriteriaAdded(function(criteria) {
|
||||||
// Delete all the rows except for the "pattern" row
|
// Delete all the rows except for the "pattern" row
|
||||||
dwr.util.removeAllRows("criteriabody", { filter:function(tr) {
|
dwr.util.removeAllRows("criteriabody", { filter:function(tr) {
|
||||||
return (tr.id != "pattern");
|
return (tr.id != "pattern");
|
||||||
@@ -37,6 +42,31 @@ function fillTable() {
|
|||||||
dwr.util.setValue("tableCriterionMax" + id, person.max);
|
dwr.util.setValue("tableCriterionMax" + id, person.max);
|
||||||
$("tableCriterion").style.display = "";
|
$("tableCriterion").style.display = "";
|
||||||
$("pattern" + id).style.display = "";
|
$("pattern" + id).style.display = "";
|
||||||
|
peopleCache2[id] = person;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function fillTable2() {
|
||||||
|
AddCriteriaJS.getCriteriaAll(function(criteria) {
|
||||||
|
// Delete all the rows except for the "pattern" row
|
||||||
|
dwr.util.removeAllRows("criteriabodyAll", { filter:function(tr) {
|
||||||
|
return (tr.id != "patternAll");
|
||||||
|
}});
|
||||||
|
// Create a new set cloned from the pattern row
|
||||||
|
var person, id;
|
||||||
|
criteria.sort(function(p1, p2) { return p1.label.localeCompare(p2.label); });
|
||||||
|
if (criteria.length == 0)
|
||||||
|
$("tableCriterionAll").style.display = "none";
|
||||||
|
for (var i = 0; i < criteria.length; i++) {
|
||||||
|
person = criteria[i];
|
||||||
|
id = person.id;
|
||||||
|
dwr.util.cloneNode("patternAll", { idSuffix:id });
|
||||||
|
dwr.util.setValue("tableCriterionAll" + id, person.label);
|
||||||
|
dwr.util.setValue("tableCriterionMinAll" + id, person.min);
|
||||||
|
dwr.util.setValue("tableCriterionMaxAll" + id, person.max);
|
||||||
|
$("tableCriterionAll").style.display = "";
|
||||||
|
$("patternAll" + id).style.display = "";
|
||||||
peopleCache[id] = person;
|
peopleCache[id] = person;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -44,28 +74,46 @@ function fillTable() {
|
|||||||
|
|
||||||
function editClicked(eleid) {
|
function editClicked(eleid) {
|
||||||
// we were an id of the form "edit{id}", eg "edit42". We lookup the "42"
|
// we were an id of the form "edit{id}", eg "edit42". We lookup the "42"
|
||||||
var person = peopleCache[eleid.substring(4)];
|
var person = peopleCache2[eleid.substring(4)];
|
||||||
dwr.util.setValues(person);
|
dwr.util.setValues(person);
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteClicked(eleid) {
|
function deleteClicked(eleid) {
|
||||||
// we were an id of the form "delete{id}", eg "delete42". We lookup the "42"
|
// we were an id of the form "delete{id}", eg "delete42". We lookup the "42"
|
||||||
var person = peopleCache[eleid.substring(6)];
|
var person = peopleCache2[eleid.substring(6)];
|
||||||
if (confirm("Are you sure you want to delete " + person.label + "?")) {
|
if (confirm("Are you sure you want to delete " + person.label + "?")) {
|
||||||
dwr.engine.beginBatch();
|
dwr.engine.beginBatch();
|
||||||
AddCriteriaJS.deleteCriterion(person);
|
AddCriteriaJS.deleteCriterion(person);
|
||||||
fillTable();
|
setTimeout("fillTable2()", 500);
|
||||||
|
setTimeout("fillTable()", 500);
|
||||||
dwr.engine.endBatch();
|
dwr.engine.endBatch();
|
||||||
}
|
}
|
||||||
|
viewed = -1;
|
||||||
|
dwr.util.setValues({ id:-1, label:null, min:null, max:null });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function addClicked(eleid) {
|
||||||
|
var person = peopleCache[eleid.substring(3)];
|
||||||
|
//person.id = -1;
|
||||||
|
dwr.engine.beginBatch();
|
||||||
|
AddCriteriaJS.setCriterion(person);
|
||||||
|
setTimeout("fillTable2()", 500);
|
||||||
|
setTimeout("fillTable()", 500);
|
||||||
|
dwr.engine.endBatch();
|
||||||
|
viewed = -1;
|
||||||
|
dwr.util.setValues({ id:-1, label:null, min:null, max:null });
|
||||||
|
}
|
||||||
|
|
||||||
function writePerson() {
|
function writePerson() {
|
||||||
var person = { id:viewed, label:null, min:null, max:null };
|
var person = { id:viewed, label:null, min:null, max:null };
|
||||||
dwr.util.getValues(person);
|
dwr.util.getValues(person);
|
||||||
|
|
||||||
dwr.engine.beginBatch();
|
dwr.engine.beginBatch();
|
||||||
AddCriteriaJS.setCriterion(person);
|
AddCriteriaJS.setCriterionClick(person);
|
||||||
fillTable();
|
//fillTable2();
|
||||||
|
//fillTable();
|
||||||
|
|
||||||
|
setTimeout("fillTable()", 500);
|
||||||
dwr.engine.endBatch();
|
dwr.engine.endBatch();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -84,6 +132,36 @@ function clearPerson() {
|
|||||||
|
|
||||||
<form:form commandName="formConference" name="monForm">
|
<form:form commandName="formConference" name="monForm">
|
||||||
|
|
||||||
|
This step allows you to add criterion which will be used when someone will evaluate an article.<br/>
|
||||||
|
You can add a new criterion using the input form, or add an existing criterion.<br/>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
<fieldset><legend>Existing criteria</legend>
|
||||||
|
<table border="1" id="tableCriterionAll" style="display: none;">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Criterion</th>
|
||||||
|
<th>Min</th>
|
||||||
|
<th>Max</th>
|
||||||
|
<th>Action</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody id="criteriabodyAll">
|
||||||
|
<tr id="patternAll" style="display: none;">
|
||||||
|
<td><span id="tableCriterionAll">Criterion</span></td>
|
||||||
|
<td><span id="tableCriterionMinAll">Min</span></td>
|
||||||
|
<td><span id="tableCriterionMaxAll">Max</span></td>
|
||||||
|
<td>
|
||||||
|
<a id="add" href="#" onclick="addClicked(this.id)" >Add</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
|
||||||
<fieldset><legend>Criteria</legend>
|
<fieldset><legend>Criteria</legend>
|
||||||
<table class="plain">
|
<table class="plain">
|
||||||
<tr>
|
<tr>
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ function init() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var peopleCache = { };
|
var peopleCache = { };
|
||||||
//var peopleCache2 = { };
|
var peopleCache2 = { };
|
||||||
var viewed = -1;
|
var viewed = -1;
|
||||||
|
|
||||||
function fillTable() {
|
function fillTable() {
|
||||||
@@ -67,7 +67,7 @@ function fillTable2() {
|
|||||||
dwr.util.setValue("tablePersonadded" + id, person.firstName + " " + person.lastName);
|
dwr.util.setValue("tablePersonadded" + id, person.firstName + " " + person.lastName);
|
||||||
$("tableNameAdded").style.display = "";
|
$("tableNameAdded").style.display = "";
|
||||||
$("patternadded" + id).style.display = "";
|
$("patternadded" + id).style.display = "";
|
||||||
//peopleCache2[id] = person; // voir ici pr re-remplir apr<70>s le back :)
|
peopleCache2[id] = person; // voir ici pr re-remplir apr<70>s le back :)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -91,7 +91,7 @@ function addInvitation() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function deletePerson(eleid) {
|
function deletePerson(eleid) {
|
||||||
var person = peopleCache[eleid.substring(11)];
|
var person = peopleCache2[eleid.substring(11)];
|
||||||
if (confirm("Are you sure you want to delete " + person.firstName + " " + person.lastName + "?")) {
|
if (confirm("Are you sure you want to delete " + person.firstName + " " + person.lastName + "?")) {
|
||||||
dwr.engine.beginBatch();
|
dwr.engine.beginBatch();
|
||||||
AddCriteriaJS.deletePerson(person);
|
AddCriteriaJS.deletePerson(person);
|
||||||
|
|||||||
@@ -159,7 +159,8 @@
|
|||||||
<property name="commandClass"
|
<property name="commandClass"
|
||||||
value="org.yacos.web.chairman.form.FormConference" />
|
value="org.yacos.web.chairman.form.FormConference" />
|
||||||
<property name="conferenceManager" ref="conferenceManager" />
|
<property name="conferenceManager" ref="conferenceManager" />
|
||||||
<property name="userManager" ref="userManager" />
|
<property name="userManager" ref="userManager" />
|
||||||
|
<property name="evaluationManager" ref="evaluationManager" />
|
||||||
<property name="validator" ref="ConferenceValidator" />
|
<property name="validator" ref="ConferenceValidator" />
|
||||||
</bean>
|
</bean>
|
||||||
|
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ import org.springframework.web.servlet.ModelAndViewDefiningException;
|
|||||||
import org.springframework.web.servlet.mvc.AbstractWizardFormController;
|
import org.springframework.web.servlet.mvc.AbstractWizardFormController;
|
||||||
import org.yacos.core.conferences.Conference;
|
import org.yacos.core.conferences.Conference;
|
||||||
import org.yacos.core.conferences.IConferenceManager;
|
import org.yacos.core.conferences.IConferenceManager;
|
||||||
|
import org.yacos.core.evaluation.Criterion;
|
||||||
|
import org.yacos.core.evaluation.IEvaluationManager;
|
||||||
import org.yacos.core.users.IUserManager;
|
import org.yacos.core.users.IUserManager;
|
||||||
import org.yacos.core.users.User;
|
import org.yacos.core.users.User;
|
||||||
import org.yacos.core.users.Role.RoleType;
|
import org.yacos.core.users.Role.RoleType;
|
||||||
@@ -29,7 +31,15 @@ public class AddConferenceController extends AbstractWizardFormController {
|
|||||||
private IConferenceManager conferenceManager;
|
private IConferenceManager conferenceManager;
|
||||||
|
|
||||||
private IUserManager userManager;
|
private IUserManager userManager;
|
||||||
|
|
||||||
|
private IEvaluationManager evaluationManager;
|
||||||
|
|
||||||
|
public IEvaluationManager getEvaluationManager() {
|
||||||
|
return evaluationManager;
|
||||||
|
}
|
||||||
|
public void setEvaluationManager(IEvaluationManager evaluationManager) {
|
||||||
|
this.evaluationManager = evaluationManager;
|
||||||
|
}
|
||||||
public IUserManager getUserManager() {
|
public IUserManager getUserManager() {
|
||||||
return userManager;
|
return userManager;
|
||||||
}
|
}
|
||||||
@@ -57,9 +67,7 @@ public class AddConferenceController extends AbstractWizardFormController {
|
|||||||
else {
|
else {
|
||||||
listPersonFiltered = new ArrayList<PersonBean>();
|
listPersonFiltered = new ArrayList<PersonBean>();
|
||||||
for (PersonBean b : listPersonBean) {
|
for (PersonBean b : listPersonBean) {
|
||||||
|
if (b.getFirstName().toLowerCase().startsWith(text.toLowerCase()) || b.getLastName().toLowerCase().startsWith(text.toLowerCase())){
|
||||||
// TODO : faire la vérif aussi sur le vrai nom, pas que sur le prénom
|
|
||||||
if (b.getFirstName().toLowerCase().startsWith(text.toLowerCase())){
|
|
||||||
listPersonFiltered.add(b);
|
listPersonFiltered.add(b);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -134,22 +142,61 @@ public class AddConferenceController extends AbstractWizardFormController {
|
|||||||
private static int nextId = 1;
|
private static int nextId = 1;
|
||||||
|
|
||||||
private Set<CriterionBean> criteria;
|
private Set<CriterionBean> criteria;
|
||||||
|
private Set<CriterionBean> criteriaAll;
|
||||||
|
|
||||||
|
public Set<CriterionBean> getCriteriaAll() {
|
||||||
|
return criteriaAll;
|
||||||
|
}
|
||||||
|
|
||||||
public Set<CriterionBean> getAllCriteria() {
|
public Set<CriterionBean> getCriteriaAdded() {
|
||||||
return criteria;
|
return criteria;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public CriterionBean getTrueCriteria(int id) {
|
||||||
|
for (CriterionBean cb : criteriaAll) {
|
||||||
|
if (cb.getId() == id){
|
||||||
|
return cb;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (CriterionBean cb : criteria) {
|
||||||
|
if (cb.getId() == id){
|
||||||
|
return cb;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCriterionClick(CriterionBean c) {
|
||||||
|
if (c.getId() == -1) {
|
||||||
|
c.setId(getNextId());
|
||||||
|
}
|
||||||
|
|
||||||
|
criteria.remove(c);
|
||||||
|
criteria.add(c);
|
||||||
|
}
|
||||||
|
|
||||||
public void setCriterion(CriterionBean c) {
|
public void setCriterion(CriterionBean c) {
|
||||||
if (c.getId() == -1) {
|
if (c.getId() == -1) {
|
||||||
c.setId(getNextId());
|
c.setId(getNextId());
|
||||||
}
|
}
|
||||||
|
|
||||||
criteria.remove(c);
|
CriterionBean trueCriteria = getTrueCriteria(c.getId());
|
||||||
criteria.add(c);
|
|
||||||
|
criteria.remove(trueCriteria);
|
||||||
|
criteria.add(trueCriteria);
|
||||||
|
criteriaAll.remove(trueCriteria);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void deleteCriterion(CriterionBean c) {
|
public void deleteCriterion(CriterionBean c) {
|
||||||
criteria.remove(c);
|
|
||||||
|
CriterionBean trueCriteria = getTrueCriteria(c.getId());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
criteria.remove(trueCriteria);
|
||||||
|
criteriaAll.add(trueCriteria);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static synchronized int getNextId()
|
private static synchronized int getNextId()
|
||||||
@@ -166,10 +213,23 @@ public class AddConferenceController extends AbstractWizardFormController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected Object formBackingObject(HttpServletRequest request) throws ModelAndViewDefiningException {
|
protected Object formBackingObject(HttpServletRequest request) throws ModelAndViewDefiningException {
|
||||||
|
logger.info(this.getClass().toString() + " dans le formBackingObject");
|
||||||
|
|
||||||
|
|
||||||
FormConference conference = new FormConference();
|
FormConference conference = new FormConference();
|
||||||
|
|
||||||
criteria = new HashSet<CriterionBean>();
|
criteria = new HashSet<CriterionBean>();
|
||||||
|
criteriaAll = new HashSet<CriterionBean>();
|
||||||
|
List<Criterion> listCriterion = evaluationManager.getCriterions();
|
||||||
|
for (Criterion crit : listCriterion) {
|
||||||
|
CriterionBean cb = new CriterionBean();
|
||||||
|
cb.setId(crit.getId());
|
||||||
|
cb.setLabel(crit.getName());
|
||||||
|
cb.setMax(crit.getMax_rating());
|
||||||
|
cb.setMin(crit.getMin_rating());
|
||||||
|
criteriaAll.add(cb);
|
||||||
|
getNextId();
|
||||||
|
}
|
||||||
|
|
||||||
listPersonBean = new ArrayList<PersonBean>();
|
listPersonBean = new ArrayList<PersonBean>();
|
||||||
listPersonAdded = new ArrayList<PersonBean>();
|
listPersonAdded = new ArrayList<PersonBean>();
|
||||||
|
|||||||
@@ -65,11 +65,11 @@ public class ConferenceValidator implements Validator {
|
|||||||
errors.rejectValue("dateStart", "conference.errors.dateStartSuperiorEnd");
|
errors.rejectValue("dateStart", "conference.errors.dateStartSuperiorEnd");
|
||||||
|
|
||||||
if (dateStart != null && dateArticle != null)
|
if (dateStart != null && dateArticle != null)
|
||||||
if (!dateStart.before(dateArticle))
|
if (!dateStart.after(dateArticle))
|
||||||
errors.rejectValue("dateArticle", "conference.errors.dateStartSuperiorArticle");
|
errors.rejectValue("dateArticle", "conference.errors.dateStartSuperiorArticle");
|
||||||
|
|
||||||
if (dateStart != null && dateEvaluation != null)
|
if (dateStart != null && dateEvaluation != null)
|
||||||
if (!dateStart.before(dateEvaluation))
|
if (!dateStart.after(dateEvaluation))
|
||||||
errors.rejectValue("dateEvaluation", "conference.errors.dateStartSuperiorEvaluation");
|
errors.rejectValue("dateEvaluation", "conference.errors.dateStartSuperiorEvaluation");
|
||||||
|
|
||||||
if (dateEvaluation != null && dateArticle != null)
|
if (dateEvaluation != null && dateArticle != null)
|
||||||
|
|||||||
Reference in New Issue
Block a user