~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to ivle/database.py

  • Committer: Nick Chadwick
  • Date: 2009-03-09 00:45:58 UTC
  • mfrom: (1156 trunk)
  • mto: This revision was merged to the branch mainline in revision 1162.
  • Revision ID: chadnickbok@gmail.com-20090309004558-xvvj990b9h9y23bu
MergedĀ fromĀ trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
288
288
        enrolment.active = True
289
289
        enrolment.role = role
290
290
 
 
291
    def unenrol(self, user):
 
292
        '''Unenrol a user from this offering.'''
 
293
        enrolment = Store.of(self).find(Enrolment,
 
294
                               Enrolment.user_id == user.id,
 
295
                               Enrolment.offering_id == self.id).one()
 
296
        Store.of(enrolment).remove(enrolment)
 
297
 
291
298
    def get_permissions(self, user):
292
299
        perms = set()
293
300
        if user is not None:
294
 
            perms.add('view')
295
 
            if user.admin:
 
301
            enrolment = self.get_enrolment(user)
 
302
            if enrolment or user.admin:
 
303
                perms.add('view')
 
304
            if (enrolment and enrolment.role in (u'tutor', u'lecturer')) \
 
305
               or user.admin:
296
306
                perms.add('edit')
297
307
        return perms
298
308
 
530
540
        return "<%s %s in %s>" % (type(self).__name__, self.exercise.name,
531
541
                                  self.worksheet.identifier)
532
542
 
 
543
    def get_permissions(self, user):
 
544
        return self.worksheet.get_permissions(user)
 
545
 
533
546
class ExerciseSave(Storm):
534
547
    """
535
548
    Represents a potential solution to an exercise that a user has submitted