Do you want two consecutive ifs rather than nested ones?  It will likely never matter, but semantically, do you want to make one branch if you're a staff and another if you're a student.  The edge case is a staff who unregisters for a course but should still have staff access.  I guess the question is do you only want to check the active flag for non-staff, more as a policy question?