avatar
+2.22
5.389
Тьфу, конечно base64. Чтобы понять почему такая проблема возникла с quoted-printable — нужно анализировать исходные (реально отправленные после обработки почтовым демоном)/конечные сообщения. В почте очень много посредников, проблема может быть где угодно, начиная с настроек sendmail`а…

Кодировка стоит UTF-8?
$config['sys']['mail']['charset']          = 'UTF-8';


В адимнке этот параметр может быть перебит настройками в БД.

Нет, ну я всё понимаю..., а как быть — если мои пользователи при этих изменениях получают письма с сайта нормального вида с рабочими ссылками?
Все 100%? Я говорю о том, что какие-то могут получать в нормальном виде, а какие-то в ненормальном. За всеми не уследить. Завтра кто-то перейдет с gmail на yandex, или rambler и привет.

Быстрое решение, чтоб не разбираться — base64. Но честно говоря ума не приложу как можно побить quoted-printable.....?

To: user1 <user1@user.com>
Subject: =?UTF-8?B?0KDQtdCz0LjRgdGC0YDQsNGG0LjRjw==?=
X-PHP-Originating-Script: 0:class.phpmailer.php
Date: Wed, 24 Sep 2014 18:03:06 +0400
Return-Path: <admin@admin.adm>
From: =?UTF-8?B?0JTQvdC10LLQvdC40LrQuCBhcnRkYXkuY2x1Yg==?= <admin@admin.adm>
Message-ID: <c7609c6c0eb21eb1ec26d9fef957df67@localhost>
X-Priority: 3
X-Mailer: PHPMailer 5.2.6 (https://github.com/PHPMailer/PHPMailer/)
MIME-Version: 1.0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

=D0=92=D1=8B =D0=B7=D0=B0=D1=80=D0=B5=D0=B3=D0=B8=D1=81=D1=82=D1=80=D0=
=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BB=D0=B8=D1=81=D1=8C =D0=BD=D0=B0 =D1=81=
=D0=B0=D0=B9=D1=82=D0=B5 <a href=3D"http://localhost/">=D0=94=D0=BD=D0=
=B5=D0=B2=D0=BD=D0=B8=D0=BA=D0=B8 example.com</a>
=D0=92=D0=B0=D1=88=D0=B8 =D1=80=D0=B5=D0=B3=D0=B8=D1=81=D1=82=D1=80=D0=
=B0=D1=86=D0=B8=D0=BE=D0=BD=D0=BD=D1=8B=D0=B5 =D0=B4=D0=B0=D0=BD=D0=BD=
=D1=8B=D0=B5:
   =D0=BB=D0=BE=D0=B3=D0=B8=D0=BD: <b>user1</b>
   =D0=BF=D0=B0=D1=80=D0=BE=D0=BB=D1=8C: <b>user1</b>


=D0=A1 =D1=83=D0=B2=D0=B0=D0=B6=D0=B5=D0=BD=D0=B8=D0=B5=D0=BC, =D0=B0=D0=
=B4=D0=BC=D0=B8=D0=BD=D0=B8=D1=81=D1=82=D1=80=D0=B0=D1=86=D0=B8=D1=8F =
=D1=81=D0=B0=D0=B9=D1=82=D0=B0 <a href=3D"http://localhost/">=D0=94=D0=
=BD=D0=B5=D0=B2=D0=BD=D0=B8=D0=BA=D0=B8 example.com</a>
Описанная выше проблема наблюдается если в качестве Content-tranfer-encoding выбран 8bit. Причем может быть так что в 90% писем будет нормально, а в десятой части пара символов побьются. По спецификациям чтобы этой проблемы не было нужно задавать Content-tranfer-encoding: quoted-printable, или 64bit.

Я подозреваю что у orthograf была версия без этих изменений. Или новая версия но без параметра
$config['sys']['mail']['encoding']         = 'quoted-printable';
в конфиг файле.

Вот что пишут первоисточники:

The values «8bit», «7bit», and «binary» all imply that NO encoding has been performed. However, they are potentially useful as indications of the kind of data contained in the object, and therefore of the kind of encoding that might need to be performed for transmission in a given transport system. «7bit» means that the data is all represented as short lines of US-ASCII data. «8bit» means that the lines are short, but there may be non-ASCII characters (octets with the high-order bit set). «Binary» means that not only may non-ASCII characters be present, but also that the lines are not necessarily short enough for SMTP transport.

The difference between «8bit» (or any other conceivable bit-width token) and the «binary» token is that «binary» does not require adherence to any limits on line length or to the SMTP CRLF semantics, while the bit-width tokens do require such adherence. If the body contains data in any bit-width other than 7-bit, the appropriate bit-width Content-Transfer-Encoding token must be used (e.g., «8bit» for unencoded 8 bit wide data). If the body contains binary data, the «binary» Content-Transfer-Encoding token must be used.


А вот что касается quoted-printable:

The Quoted-Printable encoding is intended to represent data that largely consists of octets that correspond to printable characters in the ASCII character set. It encodes the data in such a way that the resulting octets are unlikely to be modified by mail transport. If the data being encoded are mostly ASCII text, the encoded form of the data remains largely recognizable by humans. A body which is entirely ASCII may also be encoded in Quoted-Printable to ensure the integrity of the data should the message pass through a character-translating, and/or line-wrapping gateway.

www.w3.org/Protocols/rfc1341/5_Content-Transfer-Encoding.html

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

А вот что сообщает microsoft:

Binary encoding is simply unencoded binary data. It has no line-length limitations. Binary encoded messages are not valid Internet messages.


msdn.microsoft.com/en-us/library/ms527563%28v=exchg.10%29.aspx
Есть официальные релизы, объявленные здесь в соответствующем разделе, а есть девелоперская ветка в которой регулярно исправляются какие-то найденные баги, или появляются какие-то новшества. Я тестирую самую последнюю версию. Вполне возможно что с 1.0.7 описанной проблемы нет. Кстати на последней версии если поставить
$config['module']['user']['logout']['show_exit'] = 0;


это решает проблему (но и сообщения не будет совсем).
Новые параметры

$config['module']['user']['logout']['show_exit'] = 1;           // Время, в течение которого показывается страница выхода (0 - не показывается)
$config['module']['user']['logout']['redirect'] = '/';        // Безусловный редирект после выхода


соответственно, тоже не работают.
Сразу баг — при выходе, теперь сообщение «обязательно приходите еще» висит вечно без редиректа обратно. На start-kit нормально. Версия alto — последняя с гитхаба.
Баннер? o_O
Не совсем понял, в итоге — можно ли как-то настроить создание не на лету, а по крону?
(+ ещё одно — плагин нельзя отключить в админке).
Нужно обновиться, в последней версии исправлено.

Не работает форма при включенном плагине

Проверить не блокируется ли собственный IP, как ниже обсуждалось…
Поисковые роботы это и есть незарегистрированные пользователи для системы (если ничего не накрутить). Сделать свой тип, чтобы блог был доступен на чтение незарегистированным можно.
Довести до 100%, там немного совсем =)
А я не понял что вы подразумеваете под «разделом».
Все-таки стали исправлять topicintro? мой вариант закомментровать хук в конфиге плагина чем не понравился?
Выглядит неплохо (на 4.3 дюймах HTC). Если хотите можем более подробно расписать рекомендации, что как нам кажется стоит улучшить в плане дизайна и юзабилити. Нужны вам такие отзывы?

И еще вопрос сразу, будет ли авторизация и возможность оставлять комментарии, и постить топики?
Это подходит)) Штука интересная, будем следить за новостями!
А вот эти надписи в меню можно будет изменить, или убрать? Цвета изменить? Логотип? Что вообще будет кастомизируемо?
похоже баг яндекса.

Если закомментировать, то появляется

<div class=«yashare-auto-init»
data-yashareTitle="{$oTopic->getTitle()|escape:'html'}"
data-yashareDescription=""
data-yashareLink="{$oTopic->getUrl()}"
data-yashareL10n="{Config::Get('lang.current')}"
{* data-yashareTheme=«counter»*}
data-yashareType=«small»
{if $oTopic->getPreviewImageUrl()}data-yashareImage="{$oTopic->getPreviewImageUrl()}"{/if}
data-yashareQuickServices=«yaru,vkontakte,facebook,twitter,odnoklassniki,moimir,gplus,lj»>

(кнопку в конец сдивнул, но это по барабану)

Немного стиль меняется при этом.

Файл \common\templates\skin\experience\tpls\topics\topic.type_default-show.tpl
Хм… панелька с кнопками от яндекса, может сам яндекс барахлит. Непонятно в чем дело.
Если ссылка youtube.com/watch?v=q6s8iRsqLVs в тексте — то ссылка просто станет кликабельной.

Если это

youtube.com/watch?v=q6s8iRsqLVs

ссылка на отдельной строке без никакого другого текста, отбитой пустыми строками от остального текста — это будет обработано, как вставка видео.

Слишком сложно. Многие пользователи слова «пустые строки» не поймут, не то что различия в ссылках.
Можно так
добавить
.content .topic .topic-share {
padding: 6px 15px;
text-align: right;
border-left: 0;
border-right: 0;
display: block !important;
}
в \common\templates\skin\experience\assets\css\style.min.css
Автоматическое преобразовани ссылок на видео много где реализовано, очень удобно.