Форумы xBB

Форумы xBB > BBCode и прочие языки упрощенной разметки

xBB BBCODE offtop

Автор: Nutty. Последнее редактирование: 2011-05-23 11:11:31

Как и обещал Диме, выложить bbcode offtop ну или off.
Это простейшая версия оффтопа на очереди такой же оффтоп но только в виде сполера и с некоторыми изменениями.
 
Как оно выглядит.

 
Установка ббкода идём в директорию где лежат наши драгоценные ббкоды а если точнее классы их и создаём файл Offtop.php в кодировке utf-8 без BOM.
Пишем в этот файл такой код.
PHP

<?
class bb_Offtop extends bbcode {
    public $rbr = 1;
    function get_html($tree = null) {
        return '<div class="bb_offtop"><div class="bb_offtop_head">Оффтопик:</div><div class="bb_offtop_content">'.parent::get_html($this -> tree).'</div></div>';
    }
}
?>
 
далее сохраняем и идём в файл tags.php который находится в папке config редактируем в нём массив $tags то есть добавляем строчки.
Text

'offtop'           => 'bb_Offtop'  ,
'off'              => 'bb_Offtop'  ,
 
сохраняем.
Последний штрих в добавлении ббкода это CSS стили его можно и свои конечно, оригинал стиля был заимствован с ббкода сполера.
Css стили добавляйте к своим которые используются на странице где вы хотите использовать данный ббкод ну или в глобальные стили те подразумевается что вы добавите в файл стилей который используется на всех страницах вашего сайта/форума.
Не бойтесь данные стили применяются только к ббкоду офтопа.
CSS

div.bb_offtop {
     border: #d0d0d0 1px solid;
     padding: 4px;
     margin: 1em 0 0 .75em;
     border-radius: 8px;
     -moz-border-radius: 8px;
}
div.bb_offtop_head {
     color: #666666;
     font-weight: bold;
}
div.bb_offtop_content {
     color: #666666;
     font-size: 10pt;
     border: #d0d0d0 1px solid;
     padding: 5px;
     margin-top: .5em;
     border-radius: 4px;
     -moz-border-radius: 4px;
}
 
Можете радоваться новому бб коду Well

4 комментария

22.05.2011 11:39:42 #
Opera Nutty
Эх.. кнопку редактировать не нашел добавлю вторым постом бб код офтопа в виде сполера.
По умолчанию оффтоп в споллере но если нужно не в споллере то пишем [offtop=nospoiler]наш оффтоп[/offtop]
Сам класс кода
PHP

class bb_Offtop extends bbcode {
    public $rbr = 1;
    function get_html($tree = null) {
        if ($this->attrib['offtop'] == 'nospoiler'){
                return '<div class="bb_offtop"><div class="bb_offtop_head">Оффтопик:</div><div class="bb_offtop_content">'. parent::get_html($this -> tree) . '</div></div>';
        }else{
                return "<div class=\"bb_offtop\"><div class=\"bb_offtop_head\"><span onClick=\"if (this.parentNode.parentNode.getElementsByTagName('div')[1].style.display != '') {  this.parentNode.parentNode.getElementsByTagName('div')[1].style.display = ''; this.innerHTML = '<b>Оффтопик: </b><a href=\'#\' onClick=\'return false;\'>закрыть</a>'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].style.display = 'none'; this.innerHTML = '<b>Оффтопик: </b><a href=\'#\' onClick=\'return false;\'>открыть</a>'; }\" /><b>Оффтопик: </b><a href=\"#\" onClick=\"return false;\">открыть</a></span></div><div class=\"bb_offtop_content\" style=\"display: none;\">". parent::get_html($this -> tree) ."</div></div>";
        }
    }
}
 

Дополнительный CSS стиль.
CSS

div.bb_offtop_head span a{
        color: #666666;
        font-weight: bold;
        text-decoration: none;
}
 
23.05.2011 09:23:39 #
Mozilla Firefox dima
Ссылка "Редактировать" видна автору под строкой
"Автор: Такой-то. Последнее редактирование: тогда-то"
 
Спасибо за новый тег Well
23.05.2011 13:36:28 #
Opera Nutty
Dima
Когда дело касается MySQL, вместо одного сложного запроса лучше написать несколько простых.
Very we! Спрятал не найдёшь не вооруженным взглядом.
 
dima
Спасибо за новый тег
Не за что если что обращайся ещё что не будь склепаю Well
23.05.2011 14:20:26 #
Mozilla Firefox dima
Well

Ответить:

Представиться как     Антибот:
   

Просьба не постить мусор. Пользуйтесь кнопкой предварительного просмотра на панели инструментов редактора.

Введите логин: и пароль: (

© 2007-2017, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.