nc_bbcode_bar ( string $winID, string $formID, string $textareaID, [bool $help = false, [array $codes = array(), [string $prefix = "", [string $suffix = "", [bool $noscript = false]]]]] )
отображает панельку вставки BB-кодов
Функция принимает следующие параметры:
Параметр | Описание |
---|---|
$winID | идентификатор окна для JS кода |
$formID | идентификатор формы для JS кода |
$textareaID | идентификатор textarea для JS кода |
$help | выводить строку с подсказками |
$codes | какие коды выводить, по-умолчанию все |
$prefix | префикс вывода панельки с кодами |
$suffix | суффикс вывода панельки с кодами |
$noscript | не подключать JS код |
Параметр | Описание |
---|---|
SIZE | цвет шрифта в формате HexRGB (FFAA00), требуется закрывающий [COLOR=FF9900]...[/COLOR] |
SMILE | разрешить смайлики |
B | жирный шрифт, без параметров, требуется закрывающий [B]...[/B] |
I | наклонный шрифт, без параметров, требуется закрывающий [I]...[/I] |
U | подчёркнутый текст, без параметров, требуется закрывающий , требуется закрывающий [U]...[/U] |
S | зачёркнутый текст, без параметров, требуется закрывающий [S]...[/S] |
LIST | элемент списка, без параметров, требуется закрывающий [LIST]...[/LIST] |
QUOTE | цитата сообщения, требуется закрывающий [QUOTE]...[/QUOTE] или [QUOTE='имя_пользователя']...[/QUOTE] |
CODE | блок моноширинного текста, без параметров, требуется закрывающий [CODE]...[/CODE] |
IMG | вставка изображения, [IMG='адрес_изображения'] |
URL | вставка гиперссылки, требуется закрывающий [URL]адрес_url[/URL] или [URL='адрес_url']текст_ссылки[/URL] |
CUT | сокращение текста при выводе объекта в списке, требуется закрывающий [CUT]...[/CUT] или [CUT='текст_ссылки'']...[/CUT] |
Массив допустимых кодов $codes, все возможные значения:
array("SIZE", "COLOR", "SMILE", "B", "I", "U", "S", "LIST", "QUOTE", "CODE", "IMG", "URL", "CUT")
Последовательность и количество элементов учитывается, т.е. если значению массива $codes будет соответствовать
array("LIST", "B", "U")
то будут учитываться только эти коды, в указанной последовательности.
Для корректного отображения панельки с BB-кодами, следует прописать следующие классы CSS-файл макета дизайна.
select.nc_bbcode_bar_size { margin: 0 0; padding: 0; width: 100px; height: 20px; font-size: 12px; vertical-align: top; border: 1px solid #a1a1a1; border-radius: 2px; } img.nc_bbcode_wicon { border: 0; width: 27px; height: 20px; } img.nc_bbcode_icon { border: 0; width: 20px; height: 20px; } div.nc_bbcode_error { padding: 3px 0; color: #AA0000; font-weight: bold } input.nc_bbcode_helpbox { margin: 0 0 3px; padding: 2px 0; width: 100%; font-size: 10px; font-family: Verdana, Arial, sans-serif; background: none; border: 0; } div.nc_bbcode_colors { position: absolute; background: #FFFFFF; padding: 3px; border: solid 1px #AAAAAA; } div.nc_bbcode_color_top { white-space: nowrap; } div.nc_bbcode_color { padding-top: 2px; white-space: nowrap; } input.nc_bbcode_color { padding: 0; cursor: pointer; height: 20px; width: 20px; border: 0; } input.nc_bbcode_color_white { padding: 0; cursor: pointer; height: 20px; width: 20px; border: 1px solid #AAAAAA; } div.nc_bbcode_smiles { position: absolute; background: #FFFFFF; padding: 3px; border: solid 1px #AAAAAA; } div.nc_bbcode_smile_top { white-space: nowrap; } div.nc_bbcode_smile { padding-top: 2px; white-space: nowrap; } input.nc_bbcode_smile { padding: 0; cursor: pointer; height: 22px; width: 22px; border: 0; } img.nc_bbcode_smile_in_text { margin: 0 0 -3px 0; } div.nc_bbcode_url { position: absolute; background: #FFFFFF; padding: 3px; border: solid 1px #AAAAAA; height: 75px; width: 250px; } div.nc_bbcode_url input { float: right; width: 130px; height: 23px; border: 1px solid gray; font-size: 12px; color: #555; background: #fff; padding: 0 5px; } div.nc_bbcode_url span { float: left; height: 23px; width: 70px; padding: 1px; } div.nc_bbcode_img { position: absolute; background: #FFFFFF; padding: 3px; border: solid 1px #AAAAAA; height: 52px; width: 250px; } div.nc_bbcode_img input { float: right; width: 130px; height: 23px; border: 1px solid gray; font-size: 12px; color: #555; background: #fff; padding: 0 5px; } div.nc_bbcode_img span { float: left; height: 23px; width: 110px; padding: 1px; } /* BBcodes in text */ div.nc_bbcode_quote_1_top { margin: 0 25px 0 25px; } div.nc_bbcode_quote_1 { padding: 20px; border: 1px solid #CCCCCC; background: #FFFFFF; } div.nc_bbcode_quote_2_top { margin: 0 25px 0 25px; } div.nc_bbcode_quote_2 { padding: 20px; border: 1px solid #CCCCCC; background: #FFFFFF; } div.nc_bbcode_code { margin: 10px 25px; } span.nc_bbcode_list_closed { margin-left: 1em; text-indent: -.65em; display: block; } div.nc_bbcode_list { margin-left: 1em; text-indent: -.65em; } span.nc_bbcode_color { } span.nc_bbcode_size { } a.nc_bbcode_url_1 { } a.nc_bbcode_url_2 { } img.nc_bbcode_img { } span.nc_bbcode_s { } a.nc_bbcode_cut_link { } div.nc_bbcode_url { position: absolute; background: #FFFFFF; padding: 3px; border: solid 1px #AAAAAA; height: 81px; width: 250px; } div.nc_bbcode_url input { float: right; width: 130px; height: 23px; border: 1px solid gray; font-size: 12px; color: #555; background: #fff; padding: 1px 5px; margin-top: 2px; } div.nc_bbcode_url span { float: left; height: 23px; width: 70px; padding: 1px; margin-top: 2px; } div.nc_bbcode_img { position: absolute; background: #FFFFFF; padding: 3px; border: solid 1px #AAAAAA; height: 56px; width: 270px; } div.nc_bbcode_img input { float: right; width: 130px; height: 23px; border: 1px solid gray; font-size: 12px; color: #555; background: #fff; padding: 1px 5px; margin-top: 2px; } div.nc_bbcode_img span { float: left; height: 23px; width: 120px; padding: 1px; margin-top: 2px; }
Допустим, нам требуется прикрутить панельку BB-кодов к альтернативной форме добавления. Это будет выглядеть следующим образом:
<form id='addPost' name='adminForm' enctype='multipart/form-data' method='post' action='/netcat/add.php'> ... <?= nc_bbcode_bar('this', 'addPost', 'blogMessage', true)?> <textarea rows='10' name='f_Text' id='blogMessage'><?=$f_Text?></textarea> ... </form>
Для ограничения используемых кодов следует указать массив $codes:
<?= nc_bbcode_bar('this', 'addPost', 'blogMessage', true, array("B", "I", "U", "S") )?>