Иконка ресурса

Фон сообщения определённому пользователю

IlyaPep

Проверенные
Сообщения
2,161
Решения
263
Реакции
4,482
Баллы
2,250
XELLADOLL добавил(а) новый ресурс:

Фон сообщения определённому пользователю - Устанавливаем фон для сообщений определённого пользователя

Добавляем в extra.less

Less:
.message-background (@mbUserName; @mbBackgroundUrl; @mbBackground-size; @mbBackground-position: false) {
 
  .message[data-author="@{mbUserName}"] .message-inner {
    background-image: linear-gradient(to top, @xf-contentBg, fade(@xf-contentBg, 60%)), @mbBackgroundUrl;
  background-position: @mbBackground-position;
  background-size: @mbBackground-size;
}
.message[data-author="@{mbUserName}"] .message-cell.message-cell--user {
   background...

Узнать больше об этом ресурсе...
 
Как выставить определённой группе пользователей?
 
Последнее редактирование:
А где в этом коде вписывать ник пользователя?
 
Efremov, да. Я вставил его в extra.less без изменений. Какие дальнейшие действия, чтобы фоновая картинка заработала для администратора форума? Подскажите, пожалуйста.
 
Вам же все дали, там четко описано что нужно делать
 
Последнее редактирование:
Потому я и спросил- вы его хоть просмотрели до конца? Там-же явно указан ник юзера. Да и ссылка на фон тоже...
Прошу прощения))) Понял где и что. Вопрос отпадает) Спасибо.
 
Последнее редактирование:
Вот мой код, честно признаюсь, взял не отсюда, т.к. мне пока недоступны ресурсы этого форума.

HTML:
/* фон админ */
.message-background (@mbUserName; @mbBackgroundUrl; @mbBackground-size; @mbBackground-position: false) {

  .message[data-author="@{mbUserName}"] .message-inner {
    background-image: linear-gradient(to top, @xf-contentBg, fade(@xf-contentBg, 60%)), @mbBackgroundUrl;
  background-position: @mbBackground-position;
  background-size: @mbBackground-size;
}
.message[data-author="@{mbUserName}"] .message-cell.message-cell--user {
   background: transparent;
}
}
// Example
.message-background (Pepelniy; url(https://i.imgur.com/W1yqxKS.jpg); cover; left);
Ну и что не понятно?
 
На 2.2 не робит?

Поставил как сказано в мануале, но ничего не происходит
Проверял на нескольких стилях (включая дефолтный)

Заменил:
CSS:
.message-background (Pepelniy; url(https://i.imgur.com/W1yqxKS.jpg); cover; left);
на
CSS:
.message-background (Boxxy T.Morningwood; url(https://i.servimg.com/u/f98/20/05/86/41/xl0mqv10.jpg); cover; left);
в итоге ничего не поменялось(
 
На 2.2 не робит?

Поставил как сказано в мануале, но ничего не происходит
Проверял на нескольких стилях (включая дефолтный)

Заменил:
CSS:
.message-background (Pepelniy; url(https://i.imgur.com/W1yqxKS.jpg); cover; left);
на
CSS:
.message-background (Boxxy T.Morningwood; url(https://i.servimg.com/u/f98/20/05/86/41/xl0mqv10.jpg); cover; left);
в итоге ничего не поменялось(
Ну там написано 2.1. про 2.2 там ничего не написано.
 
Всё работает, там просто нечему не работать.
1610761437588.png
Да и версия движка тут не виновата.
Да и так работает, проверено.
1610761555769.png
 
Искал в чём проблема, получил ошибку в логи
Появляется если кто-то просматривает сообщения пользователя с кастомным фоном
3617 | }
3618 | }
3619 | // Example
*3620*| .message-background (Boxxy T.Morningwood; url(
Для просмотра этого контента нам потребуется ваше согласие на установку файлов cookie третьих лиц.
Более подробную информацию можно найти на нашей странице cookie.
cover; left);
------------

#0 src/XF/CssRenderer.php(416): XF\CssRenderException::createFromLessException(Object(Less_Exception_Parser), 'public:extra.le...', '// Note that th...')
#1 src/XF/CssRenderer.php(350): XF\CssRenderer->renderToCss('public:extra.le...', '// Note that th...')
#2 src/XF/CssRenderer.php(258): XF\CssRenderer->renderTemplate('public:extra.le...', NULL)
#3 src/XF/CssRenderer.php(116): XF\CssRenderer->renderTemplates(Array, Array, Array)
#4 src/XF/CssWriter.php(53): XF\CssRenderer->render(Array)
#5 css.php(30): XF\CssWriter->run(Array, 1, 3, '832cdbc460e9251...')
#6 {main}

-------------

Previous Less_Exception_Parser: Expected ')' got '.' in anonymous-file-3630.less - src/vendor/oyejorge/less.php/lib/Less/Parser.php:2795
#0 src/vendor/oyejorge/less.php/lib/Less/Parser.php(942): Less_Parser->Error('Expected ')' go...')
#1 src/vendor/oyejorge/less.php/lib/Less/Parser.php(1489): Less_Parser->expectChar(')')
#2 src/vendor/oyejorge/less.php/lib/Less/Parser.php(858): Less_Parser->parseMixinCall()
#3 src/vendor/oyejorge/less.php/lib/Less/Parser.php(1009): Less_Parser->MatchFuncs(Array)
#4 src/vendor/oyejorge/less.php/lib/Less/Parser.php(674): Less_Parser->parsePrimary()
#5 src/vendor/oyejorge/less.php/lib/Less/Parser.php(621): Less_Parser->GetRules(NULL)
#6 src/vendor/oyejorge/less.php/lib/Less/Parser.php(449): Less_Parser->_parse()
#7 src/XF/CssRenderer.php(412): Less_Parser->parse('// Note that th...')
#8 src/XF/CssRenderer.php(350): XF\CssRenderer->renderToCss('public:extra.le...', '// Note that th...')
#9 src/XF/CssRenderer.php(258): XF\CssRenderer->renderTemplate('public:extra.le...', NULL)
#10 src/XF/CssRenderer.php(116): XF\CssRenderer->renderTemplates(Array, Array, Array)
#11 src/XF/CssWriter.php(53): XF\CssRenderer->render(Array)
#12 css.php(30): XF\CssWriter->run(Array, 1, 3, '832cdbc460e9251...')
#13 {main}
и
array(4) {
["url"] => string(257) "/css.php?css=public%3Aattachments.less%2Cpublic%3Aeditor.less%2Cpublic%3Alightbox.less%2Cpublic%3Amember.less%2Cpublic%3Amessage.less%2Cpublic%3Ashiny_profile_options.less%2Cpublic%3Aextra.less&s=1&l=3&d=1610762677&k=832cdbc460e92511b0a931c4794a8efdf61c57ea"
["referrer"] => string(28) " "
["_GET"] => array(5) {
["css"] => string(154) "public:attachments.less,public:editor.less,public:lightbox.less,public:member.less,public:message.less,public:shiny_profile_options.less,public:extra.less"
["s"] => string(1) "1"
["l"] => string(1) "3"
["d"] => string(10) "1610762677"
["k"] => string(40) "832cdbc460e92511b0a931c4794a8efdf61c57ea"
}
["_POST"] => array(0) {
}
}

Может кто помочь?

Проверял всё на стандартном шаблоне, extra.less был пустой
 
Там не зависимо от просмотра сообщения ошибка, в самом коде не правильно свойство указано и какая строка
 
Там похоже проблема с точкой в нике, отсюда и ошибка, в таком случае нужно будет корректировать миксин.
Попробуйте так.

Less:
.message-background (@_mbUserName; @mbBackgroundUrl; @mbBackground-size; @mbBackground-position: false) {
    @mbUserName: e(@_mbUserName);

    .message[data-author="@{mbUserName}"] .message-inner {
        background-image: linear-gradient(to top, @xf-contentBg, fade(@xf-contentBg, 60%)), @mbBackgroundUrl;
        background-position: @mbBackground-position;
        background-size: @mbBackground-size;
    }
    .message[data-author="@{mbUserName}"] .message-cell.message-cell--user {
        background: transparent;
    }
}
// Example
.message-background ("Keir T.Moon"; url(https://i.imgur.com/W1yqxKS.jpg); cover; left);

Только ник так же в кавычках передавайте в миксине, результат.
1610775399163.png
 
Там похоже проблема с точкой в нике, отсюда и ошибка, в таком случае нужно будет корректировать миксин.
Попробуйте так.

Less:
.message-background (@_mbUserName; @mbBackgroundUrl; @mbBackground-size; @mbBackground-position: false) {
    @mbUserName: e(@_mbUserName);

    .message[data-author="@{mbUserName}"] .message-inner {
        background-image: linear-gradient(to top, @xf-contentBg, fade(@xf-contentBg, 60%)), @mbBackgroundUrl;
        background-position: @mbBackground-position;
        background-size: @mbBackground-size;
    }
    .message[data-author="@{mbUserName}"] .message-cell.message-cell--user {
        background: transparent;
    }
}
// Example
.message-background ("Keir T.Moon"; url(https://i.imgur.com/W1yqxKS.jpg); cover; left);

Только ник так же в кавычках передавайте в миксине, результат.
Посмотреть вложение 124830
Работает
1610789549809.png
 
а можно как-то сделать то же самое но что бы фон был только у определенной группы а не у пользователя? (в группе 30 человек, под каждого делать это слишком раздует шаблон extra.less )
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу