Discussion course production deployment issues fix

Fixed missing `user` context variable in dicussion course + switched to using more efficient `cached_has_permissions`
Do we have integration tests for this? Shouldn't it have been caught by it?