internal checks so that, even if button not in html view, can't use action through HTTP if don't have proper permissions
use flash notice/alert instead of success/error