Сделал заказчику поисковик по недвижке на IPS4 и Pages. Одной из последних задач была необходимость сконвертировать select-элементы с множественным выбором в набор checkbox'ов. С этой задачей отменно справился легковесный jQuery-плагин Multicheckbox.

На планшетах и телефонах может съезжать затемнение (overlay) в галерее prettyPhoto, а картинка центрироваться не по ширине экрана. Я предполагаю, что это связано с масштабированием сайта на мобильных устройствах и некорректным расчетом ширины области просмотра (viewport).

Это не всестороннее решение проблемы, а быстрое - чтоб вот прям вот уже сейчас, чтоб не вылезало красным предупреждение и разрешенная длина поля была хотя бы 255:

идем в modules/system/system.module, находим что-то типа:

$types['textfield'] = array(
    '#input' => TRUE,
    '#size' => 60,
    '#maxlength' => 128,

и меняем на:

$types['textfield'] = array(
    '#input' => TRUE,
    '#size' => 60,
    '#maxlength' => 255,

Как-то не прижились у меня css-фреймворки вроде 960gs: не гибко, много лишнего и вообще чужое. Как всегда, своя рубашка ближе к телу. В проектах я использую собственный простой каркас для последующей верстки. В нем есть общеизвестный резет-файл для сброса преднастроенных стилей браузеров (normalize.css), файл-помощник (helpers.css) с часто встречающимися стилями и главный файл стилей - styles.css.

Одной строкой на PHP можно найти индекс у элемента массива $array, который содержит максимальное (или минимальное) значение:

$max = array_keys($array, max($array))[0];

Заменив функцию max() на min(), получим минимальное значение.

Написал простую библиотеку для реализации корзины товаров на сайте, хранящейся в сессии. Она состоит из двух классов: объекта корзины (что-то типа пачки или палета из одного товара или нескольких таких же) и собственно корзины. Скачать zip-архивом.

Сама библиотека - cart.php:

Самодостаточная библиотека Requests призвана восполнить недостаток в человеческих инструментах PHP для отправки HTTP-запросов. Авторы правильно посчитали, что у всех нас полно других интересных вещей, нежели разборки с занятным API cURL, все опции и параметры которого просто невозможно держать в голове. Да и не всегда cURL доступен. Cокеты обеспечивают лишь низкоуровневый доступ и требуют от программиста парсить все ответы HTTP самостоятельно.

Наверх