Переписал с использованием backbone