refactored listeners to js