added scope.$destory to cancel timer