banner_message is a PurifiedField, it's already safe (bug 951027)

Also, drive-by fix for edge case: don't fail when translating if
somehow the data is null, just return an empty string.