Reworked a little because we don't always have a controller object, and we also risk sending too much data