added event model and controller