Everything posted by konon
-
"Пересчет и обновление" контента на 3.4 оставляет после себя какие-то теги и убивает форматирование
Это явление наблюдается и на обновленной версии (я не знаю с какой, наверное с 2.х обновлялись) и на свежеустановленных 3.4.2, 3.4.6. По вашему совету посмотрел ту тему на другом форуме, очень помогло. Скорее-всего, я неверно понял предназначение этой функции. Там объясняют, что если в версии 2.х движок хранил посты в базе в виде html, затем с версии 3.0 до 3.3 - в виде ббкодов, то для этого случая и была сделана эта функция - сконвертить "старый" html в "новые" ббкоды. А поскольку дальше вышла версия 3.4 в которой в базе вновь стали хранить html, то те ббкоды, которые мы получаем после перестроения в формат 3.0-3.3 - они частично автоматически превращаются в html парсером 3.4+, но не все, так как что-то уже изменилось, вот color и font и не превращаются. А после 3.4.7 эту функцию вообще убрали, чтоб не смущать народ. Так что придется писать скрипт. А заморачиваюсь в связи с этой темой: Там вроде придумал как сделать, но нужно пересчитать старые посты и подписи, так как в базе смесь ббкодов с предыдущей версии ipb и нормального html с текущей.
-
"Пересчет и обновление" контента на 3.4 оставляет после себя какие-то теги и убивает форматирование
Даже не верится, что эта проблема почти ни у кого не встречалась, я уже на чем только не пробовал, даже на локалке с MySQL вместо Марии - везде одно и тоже. Уточню, ломаются только фрагменты, заключенные в ббкоды color и font. А для них характерна общая черта - они при конвертировании из ббкода в html должны превратиться в span. То есть, дело с этим спаном походу. Еще б выяснить, в каком файле эта конвертация прописана и где вообще расположен сам код пересчета.
-
"Пересчет и обновление" контента на 3.4 оставляет после себя какие-то теги и убивает форматирование
В общем, пока в непонятках. Только выяснил, что если зайти в такое сломанное сообщение, нажать кнопку "Режим ббкодов", а потом ее выключить, то форматирование возвращается в нормальное состояние. То есть, это нормальные ббкоды, цвет и шрифт, которые почему-то не конвертируются в html.
-
"Пересчет и обновление" контента на 3.4 оставляет после себя какие-то теги и убивает форматирование
Протестировал четыре раза на абсолютно новых установках, 3.4.2 и 3.4.6 от illusion, 3.4.6 и 3.4.9 руссифицированные от ipbmafia - везде одинаково коцает контект. Еще и на двух разных серверах: nginx/1.12.0, libmysql - 5.5.52-MariaDB, php mysqli, PHP: 5.4.16 nginx/1.12.1, libmysql - 10.0.32-MariaDB, php mysqli, PHP: 5.6.31 Уж и не знаю на что и думать... Ведь если у остальных работает, дело явно в чем-то еще, в какой-то конфигурации или настройке.
-
"Пересчет и обновление" контента на 3.4 оставляет после себя какие-то теги и убивает форматирование
Пробовал на 3.4.6 и на 3.4.9 (нуллы), без разницы. После "пересчета и обновления" форматированный контент превращается в это: [color=#3366ff;][/color]тут текст[color=#008000;][/color] [color=#00ff00;][font="verdana;"]еще пример[/color][/font] Прямо в тексте появляются эти теги, ни то ббкод, ни то html. Так еще и часть форматирования сохраняется и эти теги могут сами по себе быть покрупнее, помельче, жирные... Спасти контент после такого уже не получается, только откат. Скажите у кого-нибудь еще так было? А то функция нужна, а пользоваться никак.
-
Перевод 3.4 на https - проблема с внешними изображениями (смешанное незащищенное содержимое)
Здравствуйте. Хочу перевести форум на https, так как во время переделки стиля под адаптивную верстку обнаружил... рекламу Мегафона, которую тот безвозбранно впихивает прямо в код форума (подмешивает в трафик своих клиентов, коим я являюсь)... Перевод сам оказался очень простым, за исключением одной проблемы, не то чтобы страшной, но неприятной - браузер не дает "зеленый свет" в адресной строке из-за изображений в постах и в чате, которые добавляют пользователи. Эти изображения зачастую загружаются по протоколу http, то есть являются незащищенными. Долго гуглил, нашел только вот такую идею с какого-то польского форума (оригинал): Пока это представляю так: Обработку bbcode -> html не трогать, то есть, пусть в базу (и из базы, при редактировании) все попадает как и раньше, в оригинальном html. Поменять только код, который отвечает за наполнение таблиц с кэшами: ibf_content_cache_posts ibf_content_cache_sigs Собственно, вопрос, как это сделать и в каком файле смотреть? Менять код могу в папке admin не опасаясь перезаписи, поскольку обновляться уже не буду. Буду рад, если поможете кусочком кода или направлением для дальнейших раскопок
-
Персонализация профиля пользователя
Большое спасибо! Все получилось <php> $customization = unserialize($this->memberData['pp_customization']); </php> <if test="$customization['bg_color']"> <style> #header { background: #{$customization['bg_color']} !important; } </style> Не могу отредактировать пост, </if> забыл в конце.
-
Персонализация профиля пользователя
Покопался в документации ipboard 3.х, вот к чему пришел на данный момент. В профиле на вкладке Персонализация вводим свой цвет (#002D96), адрес изображения по желанию. Далее выводим значение $memberData через главный шаблон: <php> print_r($this->memberData); </php> В длинном выводе обнаруживаем искомый цвет из настроек персонализации: Array ( [member_id] => 12345 ... [pp_customization] => a:4:{s:8:"bg_color";s:6:"002D96";s:7:"bg_tile";i:0;s:6:"bg_url";s:30:"http://...";s:4:"type";s:3:"url";} ... Таким образом, можно получить строку a:4:{s:8:"bg_color";s:6:"002D96";s:7:"bg_tile";i:0;s:6:"bg_url";s:30:"http://...";s:4:"type";s:3:"url";} двумя способами: <php> print($this->memberData['pp_customization']); </php> или {$this->memberData['pp_customization']} Вот только как же теперь из нее вытащить значение цвета?
-
Персонализация профиля пользователя
Дело в том, что когда я в шаблоне customizeProfile применяю следующий код: <style type="text/css"> /* Overwrite some of the standard IPB rules */ /* Content, is the main page under the header */ <if test="hasBodyCustomization:|:$member['customization']['bg_color']"> #header { <if test="hasBackgroundColor:|:$member['customization']['bg_color']"> background-color: #{$member['customization']['bg_color']} !important; </if> } </if> </style> то шапка форума #header меняет свой цвет при заходе в профиль этого пользователя. Измененный цвет шапки видят все посетители профиля. Видимо за это отвечает $member, который наполняется данными именно того пользователя, в профиль которого заходишь. Вот тут даны некоторые рецепты по персонализации всплывающего окошка пользователя showCard через $member['customization']['bg_color'] и пользовательской инфы в сообщениях userInfoPane через $author['customization']['bg_color'] Но опять же, логика такая, что другие пользователи видят ваши персонализированные элементы. Конструкции "просматриваю профиль $member - вижу его цвет", "навожу курсор на $member - вижу его цвет", "читаю пост $author - вижу его цвет" - мне не подходят Мне нужно "я вижу свой цвет, и только я". То есть, нужно брать значение цвета из настройки персонализации и генерировать индивидуальный CSS для пользователя. Теоретически решаемо, ведь если движок генерирует ссылку на профиль пользователя, которая у каждого отображается в шапке, то он как-то определяет его ID. А раз есть ID, то можно как-то и выковырять значение цвета и прилепить перед </head> стилевое правило для #header... Помогите пожалуйста)
-
Персонализация профиля пользователя
Все сделал как написано, получилось персонализировать шапку форума, но только в профиле пользователя. Нельзя ли сделать так, чтобы пользователь видел персональные цвета глобально по всему форуму?
-
Подтверждение о регистрации приходит в спам
+ запись spf, у нас в Cloudflare такая: v=spf1 redirect=_spf.yandex.net Итоговые настройки и "чистоту" домена проверить можно тут https://www.mail-tester.com/
-
Подтверждение о регистрации приходит в спам
А точно именно "адреса не существуют"? Я помню у нас появились ошибки типа "rejected", пока телефон не подтвердили.
-
Подтверждение о регистрации приходит в спам
И сразу подтвердите для Яндекса этот почтовый акк, с которого будут уходить письма форума. Иначе, через некоторое время отправка почты прекратится. Подтверждение делается в профиле на Яндексе, путем привязки номера телефона.
- Голосовой ввод сообщений