Ignore:
Timestamp:
21 Oct 2014, 07:07:04 (10 years ago)
Author:
Henrik Bettermann
Message:

Add permission, page and button to mass-clear all students in a department.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.kofa/trunk/src/waeup/kofa/students/browser.py

    r11772 r11862  
    30043004        return list(set(hitlist))
    30053005
     3006class ClearAllStudentsInDepartmentPage(UtilityView, grok.View):
     3007    """ Clear all students of a department in state 'clearance requested'.
     3008    """
     3009    grok.context(IDepartment)
     3010    grok.name('clearallstudents')
     3011    grok.require('waeup.clearAllStudents')
     3012
     3013    def update(self):
     3014        cat = queryUtility(ICatalog, name='students_catalog')
     3015        students = cat.searchResults(
     3016            depcode=(self.context.code, self.context.code),
     3017            state=(REQUESTED, REQUESTED)
     3018            )
     3019        num = 0
     3020        for student in students:
     3021            if getUtility(IStudentsUtils).clearance_disabled_message(student):
     3022                continue
     3023            IWorkflowInfo(student).fireTransition('clear')
     3024            num += 1
     3025        self.flash(_('%d students have been cleared.' % num))
     3026        self.redirect(self.url(self.context))
     3027        return
     3028
     3029    def render(self):
     3030        return
     3031
     3032
    30063033class EditScoresPage(KofaPage):
    30073034    """Page that filters and lists students.
Note: See TracChangeset for help on using the changeset viewer.