The AngularJS Event Driven implementation