Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум поддержки IPB.SU > Поддержка модификаций > Сообщения пользователя одним шрифтом


Автор: Добрый Янв 7 2008, 01:35
Модификация: Дополнительное поле профиля, с выбором шрифта, после чего каждое сообщение пользователя будет выделено именно этим шрифтом.

1. Создаем доп. поле. АЦ -> Пользователи и Группы -> Доп-ные поля профиля
(Создать новое поле)
1.2. Я его назвал "Шрифт сообщений", описание и т.п....
1.3. Тип поля: "Текстовое поле".
1.4 Поле может быть отредактировано пользователем? Да
1.5 Сохраняем и Записываем его номер TopicView "field_x".

2. АЦ -> Скины и шаблоны -> "Используемый шаблон" (Настройка HTML) -> Topic View Section -> Post Entry (Редактировать)
2.1. Находим строку
QUOTE
{$post['post']}
2.2. Заменяем, подставляя номер доп. поля в X на:
QUOTE
<!-- Пользовательский шрифт поста -->
<script type="text/javascript">
var userFont= ("{$author["field_x"]}");
if (userFont != "") { document.write('<span style="font-family:',userFont,'">'); }
</script>

{$post['post']}

<script>
var userFontField = ("{$author["field_x"]}");
if (userFontField != "") { document.write('</span>'); }
</script>
<!-- Конец пользовательского шрифта -->
2.3. Сохраняем.

Теперь можно проверить, введя название шрифта в дополнительное поле, профиля.

Дополнение: Я не хочу давать пользователю вводить тот шрифт, который он хочет, а только тот, который не резал бы глаза остальным, соответственно лучше всего заранее определить все шрифты, которые может вводить пользователь. Продолжаем модификацию:

3. Скрываем стандартное поле "Шрифт сообещий" в профиле и добавляем выпадающий список стандартных шрифтов.
3.1. Заходим в АЦ -> Скины и шаблоны -> "Используемый шаблон" (Настройка HTML) -> User Control Panel Section -> Profile Form: Custom Profile Text Input (Редактировать)
3.2. После содержимого шаблона вставляем, заменяя на нужный x это:
QUOTE
<script>
   if ("$name" == "field_x") {
      document.theForm.field_x.style.visibility="hidden";   
   }
</script>
3.3. Перед содержимым шаблона, заменяя нужный x вставляем это:
QUOTE
<script>
  if ("$name" == "field_x") {
      document.write('<select name="PostFontField" class="codebuttons" onchange="ChoosedPostFont(this.options[this.selectedIndex].value)">');
  document.write('<option value="Arial" style="font-family:Arial">Arial</option>');
  document.write('<option value="Arial Black" style="font-family:Arial Black">Arial Black</option>');
  document.write('<option value="Fantasy" style="font-family:Fantasy">Fantasy</option>');
  document.write('<option value="Microsoft Sans Serif" style="font-family:Microsoft Sans Serif">Microsoft Sans Serif</option>');
  document.write('<option value="Comic Sans Ms" style="font-family:Comic Sans Ms">Comic Sans Ms</option>');
  document.write('<option value="Monospace" style="font-family:Monospace">Monospace</option>');

      document.write('</select>');
      var NowValue = "$value";
  document.write('</br>Текущий шрифт: <span style="font-family:',NowValue,'">',NowValue,'</span>');
    }
</script>
3.4. Сохраняем.
3.5. Заходим в АЦ -> Скины и шаблоны -> "Используемый шаблон" (Настройка HTML) -> User Control Panel Section -> Profile Form: Main (Редактировать)
3.6. Находим это:
QUOTE
//-->
</script>
3.7. Перед 3.6. вставляем, подставляя нужный х это:
QUOTE
function ChoosedPostFont(Font) {
  document.theForm.field_х.value = Font; 
}
3.7. Сохраняем.

Комментарии: То, что выделено синим в п 3.3. определяет содержимое выпадаемого списка, вставить новый шрифт можно добавив туда строчку вида:
QUOTE
document.write('<option value="Код_шрифта" style="font-family:Код_шрифта" >Название_шрифта</option>');


То, что выделено зеленым в п. 3.3. добавляет под поле выбора шрифта строчку "Текущий шрифт", показывая код шрифта, выделенным тем шрифтом.

Автор: Lompyshok Фев 13 2008, 22:25
проверил три раза, чо-то не пашет.......
так в настройках поле должно быть скрытым?????

кароч в профиле появилось поле, выбираю желаемый шрифт. все отлично, но када пишу телеги, стандартный шрифт......

Автор: Добрый Фев 13 2008, 22:29
Lompyshok, странно... может от браузера зависит? Какой у вас? Если не IE проверьте там.

Автор: Lompyshok Фев 13 2008, 22:41
на вашем форуме я через оперу все отменно вижу)

через ие на своем форуме тоже не вижу......где я мог ошибку допустить???может где-то какая-нить тонкость есть, может я мелочь забыл? (пысыы:х точно везде заменил)

Автор: Добрый Фев 13 2008, 23:29
Lompyshok, Ставьте заново. Все должно работать.

Автор: Zhz Фев 13 2008, 23:35
В пункте 2.2 кавычки надо подправить.

Автор: Добрый Фев 14 2008, 15:58
Zhzash, Где?

Автор: Foykys Фев 14 2008, 16:04
Добрый, мне кажеться у него наверна что-то, потому как я ставил этот скрипт и кавычки не менял вроде.

Автор: 4yMogaH Дек 9 2008, 17:23
а нельзя такую работу проделать ещё и с цветами?

Автор: Добрый Дек 10 2008, 09:22
QUOTE (4yMogaH @ Вчера, 17:24)
а нельзя такую работу проделать ещё и с цветами?
помоему можно.

Автор: Радужная Мар 21 2009, 19:11
Очень интересно, как с цветами быть. И потом, третий пункт обязателен к выполнение или если я допускаю любой шрифт к использованию, то его не надо делать?

Автор: Радужная Мар 28 2009, 09:03
Мне кто-нибудь ответит или нет?

Автор: Dron Мар 28 2009, 09:56
QUOTE (Радужная @ Сегодня, 09:04)
Мне кто-нибудь ответит или нет?

Нет... Разбирайтесь...
Я тут никого не знаю, кто бы пользовал эту модификацию...

Автор: Добрый Мар 28 2009, 10:17
QUOTE (Радужная @ Сегодня, 09:04)
Мне кто-нибудь ответит или нет?
можно. Но трудоемко. Стучитесь в ЛС.

Автор: beauty Сен 16 2009, 12:11
Добрый, спасибо большое, все работает!

Автор: ShmiT Апр 18 2010, 19:01
Я так и не понял,как мне по умолчанию сделать шрифт в сообщениях побольше,примерно такой же как здесь ((((

Автор: Сергей Апр 19 2010, 03:30
QUOTE (ShmiT @ Апр 18 2010, 22:02)
Я так и не понял,как мне по умолчанию сделать шрифт в сообщениях побольше,примерно такой же как здесь ((((

АЦ Скины и шаблоны Стили Напротив нужного вам стиля нажимаем Редактировать.

Ищем:

QUOTE
.postcolor { font-size: 12px; line-height: 160%; }


Чтобы изменить размер шрифта сообщений, вам нужно заменить в коде число 12 на своё число.

Автор: ShmiT Апр 19 2010, 08:31
QUOTE (Сергей @ Апр 19 2010, 03:31)
QUOTE (ShmiT @ Апр 18 2010, 22:02)
Я так и не понял,как мне по умолчанию сделать шрифт в сообщениях побольше,примерно такой же как здесь ((((

АЦ Скины и шаблоны Стили Напротив нужного вам стиля нажимаем Редактировать.

Ищем:

QUOTE
.postcolor { font-size: 12px; line-height: 160%; }


Чтобы изменить размер шрифта сообщений, вам нужно заменить в коде число 12 на своё число.


Спасибо выручил !!!! smile.gif

Автор: Сергей Апр 19 2010, 13:36
QUOTE (ShmiT @ Апр 19 2010, 11:32)
Спасибо выручил !!!! smile.gif

Все "спасибо" можно выражать средством репутации, для чего она собственно и установлена на форумы smile.gif

Выручать моя работа!

Powered by Invision Power Board (//www.invisionboard.com)
© Invision Power Services (//www.invisionpower.com)