User Tools

Site Tools


stats:proc:unregisterstudent

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:unregisterstudent [2011/10/02 10:34]
Patrick Michel
stats:proc:unregisterstudent [2012/05/29 16:49]
Patrick Michel
Line 3: Line 3:
 <code xcend> <code xcend>
 unregisterStudent(ident uid, ident id, ident studentId) { unregisterStudent(ident uid, ident id, ident studentId) {
-  assume //​accounts/​account[uid]/​student/​id = studentId;+  assume ​exists //​exercises/​exercise[id] && //​exercises/​exercise[id]/​open &&  
 +         ​exists //​accounts/​account[uid]/​student && ​//​accounts/​account[uid]/​student/​id = studentId 
 +      || exists //​accounts/​account[uid]/​assistant[id];
  
   assume exists //​exercises/​exercise[id]/​students/​student[studentId];​ # implies the exercise exists   assume exists //​exercises/​exercise[id]/​students/​student[studentId];​ # implies the exercise exists
-  ​+
   assume size(//​exercises/​exercise[id]/​students/​student[studentId]/​result) = 0; # don't allow unregistering if results are there   assume size(//​exercises/​exercise[id]/​students/​student[studentId]/​result) = 0; # don't allow unregistering if results are there
 +  assume not exists //​exercises/​exercise[id]/​students/​student[studentId]/​group;​ # don't allow if signed in a group
   ​   ​
   remove //​exercises/​exercise[id]/​students/​student[studentId];​   remove //​exercises/​exercise[id]/​students/​student[studentId];​
 } }
 </​code>​ </​code>​
stats/proc/unregisterstudent.txt · Last modified: 2013/07/10 12:34 (external edit)