Перейти к основному содержанию

recaptcha и ajax_comment

Отправлено said от сб, 02/20/2016 - 16:29

Столкнулся с проблемой при которой recaptcha не отображается повторно после отправки ajax формы при возникновении ошибок валидации.

Дело оказалось в том, что recaptcha навешивается в теге head страницы при событии window.onload, ну и естественно при ajax запросе повторно не срабатывает. В качестве решения подгружаю скрипт рекаптчи в форме. Таким образом скрипт загружается при каждом рендере формы.

Теги

Entity metadata wrapper проверка пустого значения

Отправлено said от пт, 02/12/2016 - 15:59

Штатных варианто проверки существования значения в сущности не нашел. Использую try catch
 

try {
    print $node_wrp->field_description_top->value->value();
} catch (Exception $e) {
    /...
}

или вот так

$value = $wrapper->__isset('field_name') ? $wrapper->field_name->value() : '';

 

Теги

Создание кастомной сортировки во views 3

Отправлено said от чт, 02/11/2016 - 17:56

Создание кастомной сортировки во вьюс

В модуле

/**
 * Реализация hook_views_api()
 */
function mymodule_views_api() {
  return array('api' => 3);
}

Создаем файл с именем mymodule.views.inc в папке с модулем. Внутри файла

Теги

Вывод значение полей адреса из объекта заказа

Отправлено said от ср, 02/10/2016 - 11:49

В уберкарте, в объекте заказа адрес из адресной книни хранится в виде объекта. Получить конкретное поле адреса можно так:

$order = uc_order_load($order_id);
$fio = $order->uc_addresses['shipping']->getField('ucxf_fio');

 

Теги

Конвертирование кирилических доменных имен в IDNA

Отправлено said от пт, 01/22/2016 - 10:58

Для конвертирования кириллического доменного имени в формат IDNA или для обратного преобразования существует класс. Изобретать велосипед не нужно. )

Например: мой-домен.рф ---> xn----htbdnodicd.xn--p1ai
Или наоборот: xn----htbdnodicd.xn--p1ai ---> мой-домен.рф

require './idna_convert/idna_convert.class.php';

$IDN = new idna_convert();

// раскодирование
$encoded = 'xn----htbdnodicd.xn--p1ai';
$decoded = $IDN->decode($encoded);

// кодирование
$encoded = 'мой-домен.рф';
$decoded = $IDN->encode($encoded);

 

Теги

Установка composer и drush 8.0 на хостинге beget

Отправлено said от чт, 12/31/2015 - 01:44

Пришло время изучать drupal 8 и разумеется хотелось использовать drush.

На хостинге beget drush установлен глобально, но эта версия не подходит для использования с восьмеркой, поэтому пришлось скачать и установить drush 8.0 локально. Алгоритм действий ниже:

Скачиваю друш

git clone --branch master https://github.com/drush-ops/drush.git

Для того, чтобы устновить composer водйем в режим устновки ПО:

ssh localhost -p222

Скачиваю composer

Теги