[ticket/291] Add controller helper for portal functions

Fixes #291