Fixed missing `user` context variable in dicussion course + switched to using more efficient `cached_has_permissions`