controller watch instead of template ng-change