added login_required decorator to require visitors to login before seeing the view