Fix conflict between last_request_at_update_allowed? and last_request_at_threshold

Currently, if an application uses both `last_request_at_update_allowed?` and `last_request_at_threshold`, the former takes priority over the latter. If the controller returns true to `last_request_at_update_allowed?`, then `last_request_at` WILL be updated, even if it's within the threshold time period.

This patch updates this behavior so that `last_request_at` is not updated if `last_request_at_update_allowed?` is true OR if `last_request_at_threshold` has not been met.