Замена панели стандартных bb-кодов на свои - Скрипты и интересные решения - Web-кодинг - Форум
SiamiX.net.Ru - Все только начинается ;)
» Данные отсутствуют! «
Гость!
Вам нужно пройти авторизацию,
либо зарегистрироваться!

Регистрация Вход

[ Ленточный вариант · Поиск · Участники · Правила форума ]
Страница 1 из 3123»
Архив - только для чтения
Форум » Web-кодинг » Скрипты и интересные решения » Замена панели стандартных bb-кодов на свои (На форуме)
Замена панели стандартных bb-кодов на свои
SiamiX МужчинаДата: Суббота, 10 Ноябрь 2007, 18:44:01 | Сообщение # 1
SiamiX
Создатель

Группа: Администраторы
Сообщений: 335
Репутация: 43
Статус: Отсутствует

.: Дополнительные данные :.
Опять же, все это дело взято тут, и автор идеи сего чуда - мистер subONE.

Поехали:
1. Скрываем стандартные кнопки, скрываем по желанию wink Я у себя оставил size, family, color.

  • Для этого в шаблоне - "Общий вид страниц форума", в head, пишем следующие:
    Code
    <style type="text/css">  
    #bc19 {display:none;}  
    #bc18 {display:none;}  
    #bc17 {display:none;}  
    #bc16 {display:none;}  
    #bc15 {display:none;}  
    #bc14 {display:none;}  
    #bc13 {display:none;}  
    #bc12 {display:none;}  
    #bc11 {display:none;}  
    #bc10 {display:none;}  
    #bc9 {display:none;}  
    #bc8 {display:none;}  
    #bc7 {display:none;}  
    #bc3 {display:none;}  
    #bc2 {display:none;}  
    #bc1 {display:none;}  
    </style>

    2. Теперь беремся за добавление новых кнопок.
  • Для этого в шаблоне - "Форма добавления сообщения", перед $BBCODES$, пишем:
    Code
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/bold.png" border="0" title="Жирный" onclick="simpletag('b','','','message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/italic.png" border="0" title="Курсив" onclick="simpletag('i','','','message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/underlined.png" border="0" title="Подчеркнутый" onclick="simpletag('u','','','message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/s.png" border="0" title="Зачеркнутый" onclick="simpletag('s','','','message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/hr.png" border="0" title="Провести линию" onclick="tag_hr('message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/image.png" border="0" title="Добавить Картинку" onclick="tag_image('message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/link.png" border="0" title="Вставить ссылку" onclick="tag_url('message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/email.png" border="0" title="Вставить email" onclick="tag_email('message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/code.png" border="0" title="Код" onclick="simpletag('code','','','message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/quote.png" border="0" title="Цитата" onclick="simpletag('quote','','','message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/list.png" border="0" title="Вставить Список" onclick="tag_list('message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/left.png" border="0" title="По левому краю" onclick="simpletag('l','cdl','···','message')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/center.png" border="0" title="По центру" onclick="simpletag('c','cdc','···','message')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/right.png" border="0" title="По правому краю" onclick="simpletag('r','cdr','···','message')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/all_codes.png" border="0" title="Все коды" onclick="window.open('/index/17','bbCodes','scrollbars=1,width=550,height=450,top=0,left=0'); ">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/close_all_open_codes.png" border="0" title="Закрыть все открытые коды" onclick="closeall('message','')">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/smile.png" border="0" title="Еще смайлы" onclick="window.open('/index/35-1-','allSmiles','scrollbars=1,width=350,height=450,top=0,left=0'); ">
    <img src="http://www.siamix.net.ru/Design/Forum/bb_codes/klava.PNG" border="0" title="Виртуальная клавиатура" onclick="window.open('/forum/0-0-0-31','virtKB','width=300,height=120,top=0,left=0');">

    [off]Картинки можете заменить на свои. Как это сделать, думаю разберетесь smile [/off]
    3. Для кнопки "Провести линию", еще необходим скрипт, и по этому:
  • В шаблоне - "Общий вид страниц форума", в head, добавляем следующие:
    Code
    <script>
    function tag_hr()  
    {
    doInsert("[hr]")
    }
    </script>

    4. Все готово, можно пользоваться. Пример можете посмотреть тут, у нас на сайте smile

    В моем примере нет таких кнопок, как: Выделение оффтопа, Загрузить фото, Транслит. Для этих кнопок нужны отдельные скрипты. wink

    В чем отличие от варианта subONE?
    У меня правильно обрабатываются теги: По левому краю, По центру, По правому краю. Ну и я добавил еще стандартных тегов, ну и нарисовал немного картинок. smile

    Еще можно добавить кнопки:

  • Транслит

  •  
    кулик МужчинаДата: Вторник, 13 Ноябрь 2007, 00:32:01 | Сообщение # 2
    Рядовой
    Группа: Пользователи
    Сообщений: 13
    Репутация: 7
    Статус: Отсутствует

    .: Дополнительные данные :.
    А как добавить дополнительные цвета в панель Color?
     
    SiamiX МужчинаДата: Вторник, 13 Ноябрь 2007, 18:25:20 | Сообщение # 3
    SiamiX
    Создатель

    Группа: Администраторы
    Сообщений: 335
    Репутация: 43
    Статус: Отсутствует

    .: Дополнительные данные :.
    Quote (кулик)
    А как добавить дополнительные цвета в панель Color?

    Для этого есть скрипт:
    Code
    %IF($PAGE_ID$=threadpage|=postedit)%  
    <script type="text/javascript" language="javascript">  
    var colorID = document.addform.fcolor.options.length;  

    var colors = new Array();  
    colors[0] = new Array("Розовый","#ff00ff","color:#ff00ff");  
    colors[1] = new Array("Небесный","#8BEEF7","color:#8BEEF7");  
    colors[2] = new Array("Коричневый","#672505","color:#672505");  
    colors[3] = new Array("Бордовый","#9C1F22","color:#9C1F22");  
    colors[4] = new Array("Салатовый","#49E250","color:#49E250");  

    for(i=0;i<colors.length;i++) {  
    document.addform.fcolor.options[colorID] = new Option(colors[i][0],colors[i][1]);  
    document.addform.fcolor.options[colorID].setAttribute("style",colors[i][2]);  
    colorID++;  
    }  
    </script>  
    %ENDIF%

    Так можно любые цвета добавить wink
    З.Ы. Ребята, проверять теги в темах нестоит! Лучше в беседке что нибудь напишите!

     
    кулик МужчинаДата: Вторник, 13 Ноябрь 2007, 22:15:32 | Сообщение # 4
    Рядовой
    Группа: Пользователи
    Сообщений: 13
    Репутация: 7
    Статус: Отсутствует

    .: Дополнительные данные :.
    Хотелось бы, чтобы вы добавили на форуме в BB-коды - "Мерцающий текст". Очень полезная функция. И еще вопрос: а как вставить в пост HTML?
     
    blanket МужчинаДата: Вторник, 13 Ноябрь 2007, 23:53:02 | Сообщение # 5
    blanket
    Почётный модератор
    Группа: Г.Модераторы
    Сообщений: 314
    Репутация: 12
    Статус: Отсутствует

    .: Дополнительные данные :.
    Quote (кулик)
    а как вставить в пост HTML

    Кнопочка в центре бара (самая зелёненькая) "Вставить ссылку"... smile

    Если есть Skype - шлите маляву на е-mail или через ПМ. Эффективнее общаться по телефону!
     
    кулик МужчинаДата: Среда, 14 Ноябрь 2007, 01:06:13 | Сообщение # 6
    Рядовой
    Группа: Пользователи
    Сообщений: 13
    Репутация: 7
    Статус: Отсутствует

    .: Дополнительные данные :.
    Quote (blanket)
    Кнопочка в центре бара (самая зелёненькая) "Вставить ссылку"...

    Ты наверное меня не правильно понял. Я хочу вставить не ссылку, а HTML-код, с тегами как здесь http://razgona.net/forum/3-3701-1

     
    blanket МужчинаДата: Среда, 14 Ноябрь 2007, 02:30:08 | Сообщение # 7
    blanket
    Почётный модератор
    Группа: Г.Модераторы
    Сообщений: 314
    Репутация: 12
    Статус: Отсутствует

    .: Дополнительные данные :.
    Теперь понял!
    Дык движёк сайта/форума должён быть заточен... Наш, похоже для того не годится. Да и, ИМХО,незачем.

    Впрочем: BB коды - это набор тегов, основанных на языке HTML и разработанных специально для использования в сообщениях форумов. Поэтому, можно пошутить, что HTML (правда в виде тегов) уже имеет место быть... wink

    Вопрос к SiamiX-у: Возможно ли включение HTML-кода в постах форума ([html]значение[/html]). И нужно ли? Вроде безопасность ослабевает... Правда красивости...


    Если есть Skype - шлите маляву на е-mail или через ПМ. Эффективнее общаться по телефону!

    Сообщение отредактировал blanket - Среда, 14 Ноябрь 2007, 02:42:00
     
    SiamiX МужчинаДата: Среда, 14 Ноябрь 2007, 16:05:10 | Сообщение # 8
    SiamiX
    Создатель

    Группа: Администраторы
    Сообщений: 335
    Репутация: 43
    Статус: Отсутствует

    .: Дополнительные данные :.
    Quote (кулик)
    Хотелось бы, чтобы вы добавили на форуме в BB-коды - "Мерцающий текст". Очень полезная функция.

    Добавить то добавлю, и и думаю теги таблицы тоже прикручу. smile Но позже.
    Quote (blanket)
    Дык движёк сайта/форума должён быть заточен... Наш, похоже для того не годится. Да и, ИМХО,незачем.

    Как раз таки и готиться wink Вот только разрешать его крайне опасно!
    кулик, разрешить html можно в правах групп. Но крайне вам не советую этого делать!

     
    кулик МужчинаДата: Среда, 14 Ноябрь 2007, 23:05:53 | Сообщение # 9
    Рядовой
    Группа: Пользователи
    Сообщений: 13
    Репутация: 7
    Статус: Отсутствует

    .: Дополнительные данные :.
    Спасибо SiamiX, именно это я и хотел узнать happy

    Добавлено (14 Ноября 2007, 23:05:53)
    ---------------------------------------------
    SiamiX, вот я на одном сайте нашел скрипты для скерытого текста и админ сообщений. Но вставил на форум и ничего не действует может код подредактировать надо. Посмотришь?

    Code
    <script>  
    e=document.getElementsByTagName("TD");  
    for(k=15; k<e.length;k++) {  
    if(e[k].className=='posttdmessage') {  
    s=e[k].innerHTML;  
    while(s.indexOf('[admin]')!=-1){  
    s=s.replace('[admin]','<table style="border-color:#000000;" border="0" cellpadding="5" width="95%" class="codeadmin"><tr><td style="font-size:65px;font-weight:extra-bold;font-family:Courier;color:#ffffff;background:#79B2E7; width:50px;">i</td><td vAlign="center">'); s=s.replace('[/admin]','<br></td></tr></table>');  
    e[k].innerHTML=s;  
    } } }  
    </script>

    Code
    <script>
    elem=document.all.admin;  
    obj=document.getElementById('frM58').childNodes[1];  
    obj.insertBefore(elem, obj.childNodes[23]);  
    </script>

    Code
    <script>  
    e=document.getElementsByTagName("TD");  
    for(k=15; k<e.length;k++) {  
    if(e[k].className=='posttdmessage') {  
    s=e[k].innerHTML;  
    while(s.indexOf('[hide]')!=-1){  
    s=s.replace('[hide]','<br><table cellpadding="10" width="100%" class="menu1"><tr><td align="center" vAlign="center"><b>Cкрытый текст</b></td></tr><tr><td align="center" class="menu1" vAlign="center" style="display:block"><p> '); s=s.replace('[/hide]','</p></td></tr></table><br>');  
    e[k].innerHTML=s;  
    } } }  
    </script>

    Code
    <script>
    elem=document.all.hide;  
    obj=document.getElementById('frM58').childNodes[1];  
    obj.insertBefore(elem, obj.childNodes[24]);  
    </script>
     
    SiamiX МужчинаДата: Четверг, 15 Ноябрь 2007, 22:11:11 | Сообщение # 10
    SiamiX
    Создатель

    Группа: Администраторы
    Сообщений: 335
    Репутация: 43
    Статус: Отсутствует

    .: Дополнительные данные :.
    кулик, сейчас разбираться особо нет времени (позже сделаю теги у себя, вот тогда и поделюсь опытом smile ), но подскажу что сразу бросилось в глаза:
  • Сам скрипт вроде бы должен работать, но я так понимаю у вас в стилях css не прописан класс codeadmin, а вот в оформлении тега админ сообщения он присутствует:
    Code
    class="codeadmin">

    Так что пропишите, и должно будет заработать. smile
  • Если вы используете свою панель бб-кодов, то вам совершенно не нужно это:
    Code
    <script>  
    elem=document.all.admin;   
    obj=document.getElementById('frM58').childNodes[1];   
    obj.insertBefore(elem, obj.childNodes[23]);   
    </script>

    Это код кнопки для добавления ее в стандартную панель wink
  • По скрытому тексту, могу сказать тоже самое, разберитесь с классами smile

  •  
    кулик МужчинаДата: Пятница, 16 Ноябрь 2007, 20:16:13 | Сообщение # 11
    Рядовой
    Группа: Пользователи
    Сообщений: 13
    Репутация: 7
    Статус: Отсутствует

    .: Дополнительные данные :.
    SiamiX, я попробовал исправить как ты сказал, но у меня не получилось. Может у тебя получится. Но пока я переделал ОФФТОП сообщения для АДМИН СООБЩЕНИЙ. Вот скрипт

    Code
    <script type="text/javascript" language="javascript">  
    e=document.getElementsByTagName("TD");  
    for(k=15; k<e.length;k++) {  
    if(e[k].className=='posttdMessage') {  
    s=e[k].innerHTML;  
    while (s.indexOf('[adminmsg]') != -1){  
    s=s.replace('[adminmsg]','<fieldset><legend><font style="font-size: 14px; font-family: Verdana; color: red;"><B>Администратор</B></font></legend><font style="font-size: 13px; font-family: Verdana; color: red;">'); s=s.replace('[/adminmsg]','</font></fieldset>');  
    e[k].innerHTML=s;  
    }  
    } }  
    </script>

    Ты не знаешь, как сделать, чтоб этот скрипт могли использовать только определенные группы? Конечно, я скрыл кнопку для остальных, но все же biggrin

     
    SiamiX МужчинаДата: Суббота, 17 Ноябрь 2007, 14:50:32 | Сообщение # 12
    SiamiX
    Создатель

    Группа: Администраторы
    Сообщений: 335
    Репутация: 43
    Статус: Отсутствует

    .: Дополнительные данные :.
    Quote (кулик)
    Может у тебя получится.

    Тогда подожди, позже у себя делать буду smile
    Quote (кулик)
    Ты не знаешь, как сделать, чтоб этот скрипт могли использовать только определенные группы?

    Пока незнаю, но может когда буду себе делать, разберусь smile Но вроде такое невозможно. sad
    Quote (кулик)
    Конечно, я скрыл кнопку для остальных, но все же

    Остается только не разглашать, код тега. smile

     
    кулик МужчинаДата: Суббота, 17 Ноябрь 2007, 20:05:15 | Сообщение # 13
    Рядовой
    Группа: Пользователи
    Сообщений: 13
    Репутация: 7
    Статус: Отсутствует

    .: Дополнительные данные :.
    Quote (SiamiX)
    Но вроде такое невозможно.

    Нет ничего невозможного. Притом, хелпер как-то же сделал smile

    Quote (SiamiX)
    Остается только не разглашать, код тега.

    Разглашать то я не разглашаю. Но найдутся умные гении, полазеют по HTML коду страницы и найдут!! wink
     
    SiamiX МужчинаДата: Воскресенье, 18 Ноябрь 2007, 11:52:05 | Сообщение # 14
    SiamiX
    Создатель

    Группа: Администраторы
    Сообщений: 335
    Репутация: 43
    Статус: Отсутствует

    .: Дополнительные данные :.
    Quote (кулик)
    Притом, хелпер как-то же сделал

    Разве? Хм.. надо будет поломать голову smile
    Quote (кулик)
    Но найдутся умные гении, полазеют по HTML коду страницы и найдут!!

    Вот это точно, а их как правило хватает wink

     
    кулик МужчинаДата: Воскресенье, 18 Ноябрь 2007, 21:13:24 | Сообщение # 15
    Рядовой
    Группа: Пользователи
    Сообщений: 13
    Репутация: 7
    Статус: Отсутствует

    .: Дополнительные данные :.
    SiamiX, ты написал на ФТП скрипт мерцающего текста. Я его попытался поставить, но текст не мерцает. Может гдето ошибка surprised

    Quote (SiamiX)
    <script>
    e=document.getElementsByTagName("TD");
    for(k=15; k<e.length;k++) {
    if(e[k].className=='posttdMessage') {
    s=e[k].innerHTML;
    while (s.indexOf('[blink]') != -1){
    s=s.replace('[blink]','<blink>'); s=s.replace('[/blink]','<blink>');
    e[k].innerHTML=s;
    }
    } }
    </script>
     
    Форум » Web-кодинг » Скрипты и интересные решения » Замена панели стандартных bb-кодов на свои (На форуме)
    Страница 1 из 3123»
    Поиск:

    » Оплаченная Реклама » Рекомендуем
    Помощь Студентам! ;)
    В контакте
    Одноклассники.ru

    $$$ для web-мастеров
    Зарабатывай на своем сайте!
    Зарабатывайте вместе с UcoZ!
    Получить свой бесплатный сайт в UcoZ!
    Телефоны Sony Ericsson и Siemens
    Siemens телефоны
    Интернет-магазины сотовых телефонов

    Хостинг от uCoz & SiamiX design © 2008
    Rambler's Top100 Яндекс цитирования