User Tools

Site Tools


stats:proc:removeparticipant

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
stats:proc:removeparticipant [2011/09/29 19:25]
Patrick Michel
stats:proc:removeparticipant [2012/01/11 14:40]
Patrick Michel
Line 3: Line 3:
 <code xcend> <code xcend>
 removeParticipant(ident uid, ident id, ident studentId) { removeParticipant(ident uid, ident id, ident studentId) {
-  assume exists //​accounts/​account[uid]/​examiner[id];​+  assume ​exists //​accounts/​account[uid]/​student && //​accounts/​account[uid]/​student/​id = studentId && //​exams/​exam[id]/​free 
 +      || exists //​accounts/​account[uid]/​examiner[id];​
  
   assume exists //​exams/​exam[id]/​results/​participant[studentId];​ # implies the exam exists, which is implicitly true anyway   assume exists //​exams/​exam[id]/​results/​participant[studentId];​ # implies the exam exists, which is implicitly true anyway
 +
 +  assume size(//​exams/​exam[id]/​results/​participant[studentId]/​result) = 0; # don't allow to remove if results are there
  
   remove //​exams/​exam[id]/​results/​participant[studentId];​   remove //​exams/​exam[id]/​results/​participant[studentId];​
stats/proc/removeparticipant.txt · Last modified: 2013/07/10 12:34 (external edit)