сайт на данный момент является архивом информации по форуму phpbb 3.0. объяснения и помощь больше не предоставляются. старый сайт

Белк на PhpBB 3.0.14

информация по этому форуму. bbcode, моды и прочее, проверенное Белком. (перенос данных продолжается...)

Сегодня на конференции было 52 посетителей :: 1 зарегистрированный, 0 скрытых, 1 бот и 50 гостей (основано на активности посетителей за последние 24 часа)




 [ 1 сообщение ] 
Автор Сообщение
Не в сети
  (Андрей)
Администратор
Аватара пользователя

Стаж: 5 месяцев 20 дней
Сообщения: 228
Откуда: здешние мы

Стиль сайта: subsilver2
Настоящее имя: Андрей


Special Chars - мод Специальные символы

мод реализует возможность вставки специального символа в сообщение при создании темы c панели bbcode. имеет настройки в админке. прост в установке и использовании.

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

Сканы работы мода:

Админка-настройки

Админка-настройки

Админка-настройки

Prosilver

Subsilver2

Итак, если кого заинтересовало сие творение - ставим.

1. Скачать мод из архива сайта:

скачать из архива сайта

распаковать и содержимое папки root загрузить в корень сайта (где файл config.php).
в паке присутствует папка umil - библиотека данных - если она у вас уже есть, копировать на сервер её не надо.

2. Редактируем файлы форума:

Открыть posting.php
Найти

Код: Выделить всё

display_custom_bbcodes();


Вставить после найденного

Код: Выделить всё

// Mod : Special_chars --------------------------------
display_special_chars();
// Mod : Special_chars --------------------------------



Открыть includes/constants.php
Найти

Код: Выделить всё

// Additional tables


Вставить после найденного

Код: Выделить всё

// Mod : Special_chars --------------------------------
define('SPECIAL_CHARS_TABLE', $table_prefix . 'special_chars');
// Mod : Special_chars --------------------------------



Открыть includes/functions_display.php
Найти



Вставить перед найденным

Код: Выделить всё

// Mod : Special_chars --------------------------------
function display_special_chars()
{
   global $db, $template, $user, $cache, $config;
   
   if (isset($config['sc_chars_on_off']) && $config['sc_chars_on_off'])
   {
      // Add lang
      $user->setup('mods/info_acp_special_chars');

      if (($special_chars = $cache->get('_special_chars')) === false)
      {
         $and_chars_type = !empty($config['sc_chars_type']) ? ' AND chars_type = ' . (int) $config['sc_chars_type'] : '';
         $sql = 'SELECT chars_iso, chars_display, chars_langname
            FROM ' . SPECIAL_CHARS_TABLE . '
               WHERE chars_display = 1'.
               $and_chars_type . '
            ORDER BY chars_order ASC';
         $result = $db->sql_query($sql);

         $count = 0 ;
         $special_chars = array(); // Reset
         while ($row = $db->sql_fetchrow($result))
         {
            $special_chars[] = array(
               'chars_iso'         => $row['chars_iso'],
               'chars_langname'   => $row['chars_langname'],
               'count'            => $count,
            );
            $count++;
         }
         $db->sql_freeresult($result);
         // Cache displayed special chars
         $cache->put('_special_chars', $special_chars);
      }
      
      // Make table and send data...
      if (sizeof($special_chars))
      {
         foreach ($special_chars as $row)
         {
            $template->assign_block_vars('td', array(
               'ISO'         => $row['chars_iso'],
               'LANGNAME'      => (isset($user->lang[$row['chars_langname']])) ? $user->lang[$row['chars_langname']] : $user->lang['SC_NO_LANGNAME'],
               'ADD_ROW'      => ($row['count'] % 22 == 0) ? '</tr><tr>' : '',
            ));
         }
      
      $template->assign_vars(array(
         'S_SPECIAL_CHARS'      => true,
         ));
      }
   }
}
// Mod : Special_chars --------------------------------



для стилей на основе prosilver
Открыть styles/prosilver/template/posting_buttons.html
Найти

Код: Выделить всё

<div id="format-buttons">


Вставить перед найденным

Код: Выделить всё

<!-- IF S_SPECIAL_CHARS -->
   <!-- INCLUDE special_chars.html -->
<!-- ENDIF -->


Найти

Код: Выделить всё

<!-- BEGIN custom_tags -->


Вставить перед найденным

Код: Выделить всё

   <!-- IF S_SPECIAL_CHARS --><input type="button" class="button2" name="bbchars" id="bbchars" value="&Omega;" style="font-weight:bold; width: 30px" onclick="change_chars();" title="{L_BBCODE_CHARS_HELP}" /><!-- ENDIF -->



Открыть styles/prosilver/template/editor.js
Найти

Код: Выделить всё

/**
* Caret Position object
*/


Вставить перед найденным

Код: Выделить всё

/**
* Help zoom function...
* Mod : Special_chars
*/
function zoom(chr)
{
   var zooms=document.getElementById("zoom");
   var zoom=zooms.firstChild;
   if(zoom.nodeType==1) {zoom=zooms.childNode[1]};
   var size=zoom.length;
   if (chr.value !=" ")
   {
      document.getElementById("zoom").firstChild.replaceData(0, size, chr);
   }
   else
   {
      document.getElementById("zoom").firstChild.replaceData(0, size, " ");
   }
}

для стилей на основе subsilver2
Открыть styles/subsilver2/template/posting_buttons.html
Найти

Код: Выделить всё

      <script type="text/javascript" src="{T_SUPER_TEMPLATE_PATH}/editor.js"></script>


Вставить после найденного

Код: Выделить всё

<!-- IF S_SPECIAL_CHARS -->
   <!-- INCLUDE special_chars.html -->
<!-- ENDIF -->


Найти

Код: Выделить всё

   </td>
</tr>

<!-- IF S_BBCODE_ALLOWED and .custom_tags -->


Вставить перед найденным

Код: Выделить всё

<!-- IF S_SPECIAL_CHARS --><input type="button" class="btnbbcode" name="bbchars" value="&Omega;" style="font-weight:bold; width: 30px;" onclick="openbox('block1000'); return false" title="{L_BBCODE_CHARS_HELP}" /><!-- ENDIF -->



Открыть styles/subsilver2/template/overall_header.html
Найти



Вставить перед найденным

Код: Выделить всё

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

<script type="text/javascript">
 
function openbox(id){
    display = document.getElementById(id).style.display;
 
    if(display=='none'){
       document.getElementById(id).style.display='block';
    }else{
       document.getElementById(id).style.display='none';
    }
}
</script>


если у вас на форуме уже подключена библиотека - строчку подключения

Код: Выделить всё

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>


прописывать не надо.



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

Открыть styles/subsilver2/theme/stylesheet.css
Найти

Код: Выделить всё

.syntaxstring {
   color: #DD0000;
}


Вставить после найденного

Код: Выделить всё

.zoom_special {
        font-size: 14px;
}



3. Завершение установки:

Для завершения установки необходимо запустить скрипт-инсталлятор по адресу

Код: Выделить всё

http://ваш сайт/install_sc.php


после отработки скрипта удалите файл install_sc.php с сервера.

Почистить кэш.
Настройки мода находятся по адресу Административный раздел - Модули - Специальные символы.

Всё. Успешной вам установки и применения.




трёхголовый белк семейства рептилоидов:
"три головы - хорошо, на как же трудно придти к согласию..."
Показать сообщения за:  Поле сортировки  
Ответить на тему  [ 1 сообщение ] 

Кто сейчас на конференции:

Всего посетителей: 1, из них зарегистрированных: 0, скрытых: 0 и гостей: 1 (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (63) здесь было 23 май 2026, 12:35

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Часовой пояс: UTC + 3 часа



Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

cron

Текущее время: 26 июн 2026, 20:52

Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB.