controller mixin