В следующей версии ( 1.11 ) исправим этот недочёт.
Сейчас вы можете проделать следующее:
1) Скачать файл, приложенный к ответу.
2) В папке protected/extensions создать директорию idna.
3) Разархивировать и переместить данный файл в эту директорию ( idna ).
4) В файле config/main-free.php после
- Код: Выделить всё
'ext.setReturnUrl.ESetReturnUrlFilter',
вставить:
- Код: Выделить всё
'ext.idna.IdnaConvert',
5) В файле themes\classic\views\modules\apartments\views\_user_info.php код:
- Код: Выделить всё
if($data->canShowInView('phone')) {
echo '<div class="flash-notice phone-show-alert" style="display: none;">'.Yii::t('common', 'Please tell the seller that you have found this listing here {n}', '<strong>'.str_replace(array('http://', 'www.'), '', Yii::app()->getRequest()->getHostInfo()).'</strong>').'</div>';
}
заменить на:
- Код: Выделить всё
if($data->canShowInView('phone')) {
$hostname = IdnaConvert::checkDecode(str_replace(array('http://', 'www.'), '', Yii::app()->getRequest()->getHostInfo()));
echo '<div class="flash-notice phone-show-alert" style="display: none;">'.Yii::t('common', 'Please tell the seller that you have found this listing here {n}', '<strong>'.$hostname.'</strong>').'</div>';
}
=========================
В файле protected\modules\notifier\components\Notifier.php замените:
- Код: Выделить всё
$body = str_replace('{host}', Yii::app()->request->hostInfo, $body);
на:
- Код: Выделить всё
$body = str_replace('{host}', IdnaConvert::checkDecode(Yii::app()->request->hostInfo), $body);
затем:
- Код: Выделить всё
$body = str_replace('{fullhost}', Yii::app()->getBaseUrl(true), $body);
на:
- Код: Выделить всё
$body = str_replace('{fullhost}', IdnaConvert::checkDecode(Yii::app()->getBaseUrl(true)), $body);
а также:
- Код: Выделить всё
$body = str_replace('{url}', $url, $body);
на:
- Код: Выделить всё
$body = str_replace('{url}', IdnaConvert::checkDecode($url), $body);
и
- Код: Выделить всё
$body = str_replace('{'.$field.'}', $val, $body);
на:
- Код: Выделить всё
$body = str_replace('{'.$field.'}', IdnaConvert::checkDecode($val), $body);
=========================
Ну и по результатам отпишитесь - интересно, работает или нет.