August 26, 2021

Таймер

Раз в сезон мы откупориваем специальную страницу на сайте и продаем через нее купоны. Это такая акция, на которой можно закупиться часами записи за полцены.

Когда я ее писал, решил заебашить таймер обратного отсчета. Нашел жс-сниппет в интернете и вставил в код.

Но

Сниппет был с секундами.

Дергать юзеров постоянно тикающим таймером не очень хотелось, и я отрезал секунды. Заодно и минуты. Остались дни и часы, как на скрине.

А потом таймер сломался.

Видимо, где-то наебнулось конвертирование даты и времени, и жс не схавал то, что ему генерил рельсовый контроллер. Весной я забил хуй, а сейчас решил починить.

Захожу в код страницы, смотрю на этот сниппет и понимаю, какой я долбоеб.

Тут вот в чем дело. Жс-таймер в принципе нужен для того, чтобы в реальном времени тикать секундами. Следить за обновлением часов и дней нет никакой нужды. Юзер зашел, ввел почту и пошел дальше платить. На странице купонов он полминуты.

Поэтому я быстренько поставил гем, который считает разницу во времени, и вывел две цифры в строку. Изи.

Получился эпичный дифф:

Кому нужны купоны, они продаются тут: almarec.ru/coupon.