|
Архив - только для чтения |
| Замена панели стандартных bb-кодов на свои |
SiamiX  | Дата: Суббота, 10 Ноябрь 2007, 18:44:01 | Сообщение # 1 |
Создатель
Группа: Администраторы
Сообщений: 335
Репутация: 43
Статус: Отсутствует
.: Дополнительные данные :.
| Опять же, все это дело взято тут, и автор идеи сего чуда - мистер subONE. Поехали: 1. Скрываем стандартные кнопки, скрываем по желанию Я у себя оставил 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]Картинки можете заменить на свои. Как это сделать, думаю разберетесь [/off] 3. Для кнопки "Провести линию", еще необходим скрипт, и по этому: В шаблоне - "Общий вид страниц форума", в head, добавляем следующие: Code <script> function tag_hr() { doInsert("[hr]") } </script> 4. Все готово, можно пользоваться. Пример можете посмотреть тут, у нас на сайте В моем примере нет таких кнопок, как: Выделение оффтопа, Загрузить фото, Транслит. Для этих кнопок нужны отдельные скрипты. В чем отличие от варианта subONE? У меня правильно обрабатываются теги: По левому краю, По центру, По правому краю. Ну и я добавил еще стандартных тегов, ну и нарисовал немного картинок. Еще можно добавить кнопки: Транслит
|
| |
|
| |
кулик  | Дата: Вторник, 13 Ноябрь 2007, 00:32:01 | Сообщение # 2 |
|
Рядовой
Группа: Пользователи
Сообщений: 13
Репутация: 7
Статус: Отсутствует
.: Дополнительные данные :.
| А как добавить дополнительные цвета в панель Color?
|
| |
|
| |
SiamiX  | Дата: Вторник, 13 Ноябрь 2007, 18:25:20 | Сообщение # 3 |
Создатель
Группа: Администраторы
Сообщений: 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% Так можно любые цвета добавить З.Ы. Ребята, проверять теги в темах нестоит! Лучше в беседке что нибудь напишите!
|
| |
|
| |
кулик  | Дата: Вторник, 13 Ноябрь 2007, 22:15:32 | Сообщение # 4 |
|
Рядовой
Группа: Пользователи
Сообщений: 13
Репутация: 7
Статус: Отсутствует
.: Дополнительные данные :.
| Хотелось бы, чтобы вы добавили на форуме в BB-коды - "Мерцающий текст". Очень полезная функция. И еще вопрос: а как вставить в пост HTML?
|
| |
|
| |
blanket  | Дата: Вторник, 13 Ноябрь 2007, 23:53:02 | Сообщение # 5 |
Почётный модератор
Группа: Г.Модераторы
Сообщений: 314
Репутация: 12
Статус: Отсутствует
.: Дополнительные данные :.
| Quote (кулик) а как вставить в пост HTML Кнопочка в центре бара (самая зелёненькая) "Вставить ссылку"...
Если есть 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 |
Почётный модератор
Группа: Г.Модераторы
Сообщений: 314
Репутация: 12
Статус: Отсутствует
.: Дополнительные данные :.
| Теперь понял! Дык движёк сайта/форума должён быть заточен... Наш, похоже для того не годится. Да и, ИМХО,незачем. Впрочем: BB коды - это набор тегов, основанных на языке HTML и разработанных специально для использования в сообщениях форумов. Поэтому, можно пошутить, что HTML (правда в виде тегов) уже имеет место быть... Вопрос к SiamiX-у: Возможно ли включение HTML-кода в постах форума ([html]значение[/html]). И нужно ли? Вроде безопасность ослабевает... Правда красивости...
Если есть Skype - шлите маляву на е-mail или через ПМ. Эффективнее общаться по телефону!
Сообщение отредактировал blanket - Среда, 14 Ноябрь 2007, 02:42:00 |
| |
|
| |
SiamiX  | Дата: Среда, 14 Ноябрь 2007, 16:05:10 | Сообщение # 8 |
Создатель
Группа: Администраторы
Сообщений: 335
Репутация: 43
Статус: Отсутствует
.: Дополнительные данные :.
| Quote (кулик) Хотелось бы, чтобы вы добавили на форуме в BB-коды - "Мерцающий текст". Очень полезная функция. Добавить то добавлю, и и думаю теги таблицы тоже прикручу. Но позже. Quote (blanket) Дык движёк сайта/форума должён быть заточен... Наш, похоже для того не годится. Да и, ИМХО,незачем. Как раз таки и готиться Вот только разрешать его крайне опасно! кулик, разрешить html можно в правах групп. Но крайне вам не советую этого делать!
|
| |
|
| |
кулик  | Дата: Среда, 14 Ноябрь 2007, 23:05:53 | Сообщение # 9 |
|
Рядовой
Группа: Пользователи
Сообщений: 13
Репутация: 7
Статус: Отсутствует
.: Дополнительные данные :.
| Спасибо SiamiX, именно это я и хотел узнать  Добавлено (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 |
Создатель
Группа: Администраторы
Сообщений: 335
Репутация: 43
Статус: Отсутствует
.: Дополнительные данные :.
| кулик, сейчас разбираться особо нет времени (позже сделаю теги у себя, вот тогда и поделюсь опытом ), но подскажу что сразу бросилось в глаза: Сам скрипт вроде бы должен работать, но я так понимаю у вас в стилях css не прописан класс codeadmin, а вот в оформлении тега админ сообщения он присутствует: Так что пропишите, и должно будет заработать. Если вы используете свою панель бб-кодов, то вам совершенно не нужно это: Code <script> elem=document.all.admin; obj=document.getElementById('frM58').childNodes[1]; obj.insertBefore(elem, obj.childNodes[23]); </script> Это код кнопки для добавления ее в стандартную панель По скрытому тексту, могу сказать тоже самое, разберитесь с классами
|
| |
|
| |
кулик  | Дата: Пятница, 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> Ты не знаешь, как сделать, чтоб этот скрипт могли использовать только определенные группы? Конечно, я скрыл кнопку для остальных, но все же
|
| |
|
| |
SiamiX  | Дата: Суббота, 17 Ноябрь 2007, 14:50:32 | Сообщение # 12 |
Создатель
Группа: Администраторы
Сообщений: 335
Репутация: 43
Статус: Отсутствует
.: Дополнительные данные :.
| Quote (кулик) Может у тебя получится. Тогда подожди, позже у себя делать буду Quote (кулик) Ты не знаешь, как сделать, чтоб этот скрипт могли использовать только определенные группы? Пока незнаю, но может когда буду себе делать, разберусь Но вроде такое невозможно. Quote (кулик) Конечно, я скрыл кнопку для остальных, но все же Остается только не разглашать, код тега.
|
| |
|
| |
кулик  | Дата: Суббота, 17 Ноябрь 2007, 20:05:15 | Сообщение # 13 |
|
Рядовой
Группа: Пользователи
Сообщений: 13
Репутация: 7
Статус: Отсутствует
.: Дополнительные данные :.
| Quote (SiamiX) Но вроде такое невозможно. Нет ничего невозможного. Притом, хелпер как-то же сделал Quote (SiamiX) Остается только не разглашать, код тега. Разглашать то я не разглашаю. Но найдутся умные гении, полазеют по HTML коду страницы и найдут!!
|
| |
|
| |
SiamiX  | Дата: Воскресенье, 18 Ноябрь 2007, 11:52:05 | Сообщение # 14 |
Создатель
Группа: Администраторы
Сообщений: 335
Репутация: 43
Статус: Отсутствует
.: Дополнительные данные :.
| Quote (кулик) Притом, хелпер как-то же сделал Разве? Хм.. надо будет поломать голову Quote (кулик) Но найдутся умные гении, полазеют по HTML коду страницы и найдут!! Вот это точно, а их как правило хватает
|
| |
|
| |
кулик  | Дата: Воскресенье, 18 Ноябрь 2007, 21:13:24 | Сообщение # 15 |
|
Рядовой
Группа: Пользователи
Сообщений: 13
Репутация: 7
Статус: Отсутствует
.: Дополнительные данные :.
| SiamiX, ты написал на ФТП скрипт мерцающего текста. Я его попытался поставить, но текст не мерцает. Может гдето ошибка 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>
|
| |
|
|
|