Заказы временно не принимаются

📅 20 марта 2019

Сочность картинки: как работает Vibrance, и готовый скрипт

В фотошопе появилась функция Vibrance, а в русской версии она называется «вибрация» или «сочность». Похожая вещь реализована и в современных смартфонах в режиме редактирования фото. Новый фильтр даёт более реалистичный результат на фотографиях. Это отличная замена топорному Saturation.

Напомню, классический фильтр Saturation поднимает насыщенность у каждого пикселя на фотографии, в итоге появляются области, «перекрученные по цветам». А кроме того, в JPEG изображении подчёркиваются артефакты:

Слева обычная фотка, справа — с задранной насыщенностьюСлева обычная фотка, справа — с задранной насыщенностью

Большинство фотографий в интернете на данный момент — именно в формате JPG среднего качества. Дополнительные преобразования могут ещё сильнее ухудшить внешний вид. Особенно это важно для товаров в интернет-магазинах. Поэтому любые подобные фильтры графики надо применять с осторожностью. И в этом смысле фильтр Vibrance — просто находка для интернет-магазинов, потому что он работает «умно».

Фильтр Vibrance поднимает насыщенность только в тех областях фото, где это действительно необходимо:

Слева обычная фотка, справа — с увеличенной сочностьюСлева обычная фотка, справа — с увеличенной сочностью

▼ Читать дальше

📅 16 марта 2019

API Яндекс Карт: расчёт доставки по зонам

Задача:
рассчитать стоимость доставки товара по городу, учитывая различные тарифные зоны. Выбрать и сгруппировать заказы, которые удобно доставить курьером за одну поездку.

Данный модуль создан на движке Яндекс.Карт и предназначается для CRM-системы службы доставки. На вход поступают данные о всех новых (ещё не обработанных) заказах: номер заказа, желаемое время и адрес доставки. На выходе получается таблица, в которой перечислены заказы, расстояние от офиса, стоимость доставки в зависимости от тарифной зоны. Если адрес находится за пределами города, то показан километраж за МКАДом, а стоимость увеличивается с учётом цены за километр.

Сервис API Яндекс.Карт рассчитывает точки не мгновенно. На обработку и просчёт 10 точек уходит примерно 1-2 секунды. Поэтому пункты просчитываются по одному, и в это время таблица недоступна. После того, как все точки рассчитаны, менеджеру можно приступать к обработке заказов.

  • Поступившие заказы обрабатываются по одному, в итоге получается таблица с ценамиПоступившие заказы обрабатываются по одному, в итоге получается таблица с ценами

Здесь реализована синхронизация карты и таблицы. Заказы можно выбирать как на карте, так и в самой таблице. Кнопка «Только выделенные» оставляет на карте только выделенные заказы — так удобнее оценить, успеет ли курьер объехать все эти точки за один день.

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

📅 2 марта 2019

PHP 7: простая замена с помощью регулярного выражения

В интернете много курсов по регулярным выражениям, но все они написаны слишком сложно даже для человека, имеющего большой опыт в разработке сайтов ) Попробую исправить эту ситуацию, возьму живой пример из своей работы и напишу просто — о сложном.

Самый частый случай использования регулярок в моих проектах — какое-то преобразование контента на сервере перед передачей клиенту. Например, есть картинка с подписью alt:

<img src="file.jpg" alt="подпись">

Нужно вытащить подпись из тега alt, поставить её под картинкой, и обернуть всё это дело в div.
Вот, что должно получиться на выходе:

<div><img alt="подпись" src="file.jpg"><span>подпись</span></div>

Цветом помечены те кусочки, которые мы взяли из первой фразы в неизменном виде. Как видим, в выходной конструкции «подпись» использована два раза, а свойства поменяны местами — это значит, что обычной заменой str_replace данная задача никак не решается )

▼ Читать дальше

📅 2 января 2019

Обновление сайта Братьев Бондаренко — 2019

bondarenko.show

Аккордеонисты братья Бондаренко решили обновить дизайн сайта. Новую версию по традиции заказали мне, и, как обычно, предоставили примерные эскизы того, что они хотят. Вот, что у нас получилось:

Сайт братьев Бондаренко (на PC и на телефоне)Сайт братьев Бондаренко (на PC и на телефоне)

Сайт создан в ультра минималистичном стиле, но главное — полностью автоматизирован, то есть, он обновляется сам. На него загружается свежая лента из Instagram, видео из Ютуба, актуальные треки из музыкальных стриминговых сервисов.

Русский и английский языки переключаются без перезагрузки страницы.

📅 16 декабря 2018

Плавная прокрутка страницы к якорю с сохранением хеша на jQuery

Стандартное поведение браузеров при клике на якорную ссылку может сбить человека с толку. Потому что страница скроллится мгновенно, и человек не понимает, в какое место страницы он попал (вверх или вниз), да и вообще — остался ли он на данной странице, или перешёл на другую.

Чтобы это исправить, будем использовать плавную прокрутку на javascript или jquery. Плавная прокрутка до элемента ясно даёт понять, что мы остались на том же сайте, и куда именно прокрутилась страница.

План скрипта

Обычная функция типа scrollTo делает прокрутку, но это было бы слишком грубо и не учитывало все нюансы. А вот что требуется от правильного скрипта:

1) отменить стандартные действия браузера при клике по таким ссылкам;
2) определить расстояние до элемента, к которому нужно прокрутить;
3) плавно, то есть, без тормозов прокрутить страницу на это расстояние;
4) изменить window.location.hash — часть адреса страницы после решётки #.

▼ Читать дальше

📅 11 сентября 2018

Схема проезда РХТ групп, Ногинск

Это моя первая схема проезда с грузовиками вместо легковых машин. Level up!

▼ Читать дальше

© 2004 – 2024