add a decorator for offer template

Obviously, it needs some work. But I wanted to try out decorators to see
what everybody's talking about.