VBTT - Мод торрент трекера для vBulletin. Скачать движок трекера бесплатно (не tbdev и не torrentpier). Разработка vBulletin Torrent Tracker

VBTT - Мод торрент трекера для vBulletin. Скачать движок трекера бесплатно (не tbdev и не torrentpier). Разработка vBulletin Torrent Tracker (http://www.vbtt.org/index.php)
-   Другие модули для vB (http://www.vbtt.org/forumdisplay.php?f=3)
-   -   Релиз-визард Lite (Release Wizard Lite) (http://www.vbtt.org/showthread.php?t=60)

Azec 24.09.2009 14:35

дополнительные bb-коды делаются не хаком, а просто добавлением нового bb кода через админку.

и оно будет работать до тех пор пока ты не удалишь его через админку.
в коде сообений внезависимости от того установлен ли bb код или нет будет полюбому [rw=xx]YY[/wr]

если бб код не установлен то в выводе так и будет [rw=Жанр]Фантастика[/wr]

если установлен то мы будем видеть например: Фантастика или <b>Фантастика</b> или <a href="...">Фантастика</a>

Skald 24.09.2009 17:14

Azec, Могу сказать одно если ббкод не установлен, то парсить текст сообщения - удовольствие еще то... Придется полностью дублировать код парсинга ббкодов булки (изобретать велосипед), а кода там совсем не мало.

Добавлено через 59 минут
Добавил начало инструкции в первый пост. Немного позже будет продолжение

Azec 24.09.2009 19:03

Щас попробую с тобой по асе списаться.

Skald 25.09.2009 10:03

Добавил инструкцию, может она и не очень, т.к. я не мануалописатель, но этого должно хватить чтобы разобраться с основным принципом работы шаблона.

gM@X 26.09.2009 10:17

ещё по субтитрам
<option value="[null]нет[/null]">нет</option>
насколько понимаю должен быть сделан этот ббкод на форуме, ибо по умолчанию его нет :)

Skald 26.09.2009 14:27

Цитата:

Сообщение от gM@X (Сообщение 1129)
насколько понимаю должен быть сделан этот ббкод на форуме, ибо по умолчанию его нет :)

Это хвосты от полной версии. Править ведь можно как угодно.
У кого не спрашивал - всем нужны были различные вариации полей для одних и тех же визардов.
Я выложил продукт (с примером всего функционала) и уже задача админа сделать так чтобы было именно так как ему надо

gM@X 27.09.2009 02:23

понятно, просто пометка, претензий к данному не имею :)

но вот хотелось бы получить ответ по спойлеру...
Цитата:

Сообщение от gM@X (Сообщение 1110)
<...>
Skald
можно вопрос? в принципе с шаблонами вроде разобрался, но единственное на данный момен не понять одно, как можно сделать чтобы скриншоты которые заливаются при "Загрузить/просмотреть..." в итоге оказались под спойлером, это насколько помню реализовано на ua-torrent.com?
<...>

мне в голову (познаний очень мало) пока не приходит как это сделать (

Skald 27.09.2009 08:10

gM@X, Насчет скринов.
Если например это ссылки на фотохостинги, то тут нет проблем - просто в секции готового сообщения помещаем поле внутрь ббкода спойлера. Аналогично можно поступить с вложениями форума, по аналогии с постером - там можно глянуть весь код (html + js), но все равно придется потом в выходной форме выводить в ббкоде спойлера.

Если нужно именно так как на ua-torrent-е, то не получится - там стоит спец. хак расширенной заливки вложений, для каждого типа вложений (скрины, постеры и т.д.) отдельное поле с отдельными настройками + возможность отображения размеров картинки через js.

Добавлено через 6 минут
И еще вспомнил одну опцию, несовместимую с визардом.
В Основных настройках подраздел Основные настройки настройка Добавление названий шаблонов в комментарии HTML должно быть отключено - а то будет довольно много мусора в готовом тексте сообщения.
Добавил это также в первый пост

Azec 29.09.2009 14:59

Вложений: 1
Написал код парсинга.
Прилагаю его в архиве файла php.

Вот такой код парсинга
PHP код:

   echo 'результат парсинга:<br>';
   echo 
"<b>жанры:</b> " JoinR(ParseR('genr',$_POST['parse']))."<br>";
   echo 
"<b>режжисер:</b> "  JoinR(ParseR('rez',$_POST['parse']));

function 
ParseR($opt,$str// выдираем все таги RW с выставленной опцией $opt
{
    
preg_match_all("/\[rw=".$opt."\](.*?)\[\/rw\]/",$str,$result,PREG_SET_ORDER );
    return 
$result;
}

function 
JoinR($regs)  // собираем все выдранные таги, через запятую
{
    
$str='';
    for(
$i=0;$i<count($regs);$i++)
    {
        if(
$str=='')
            
$str $regs[$i][1];
        else
            
$str $str.", ".$regs[$i][1];
    }
    return 
$str;
}

// ------------------- КОНЕЦ КОДА ПАРСИНГА -----------------------------------

function MakeR($opt,$val)  // пишем таг RW c опцией $opt и значением $val
{
    return 
'[rw=' $opt ']'.$val.'[/rw]';


Что бы его интегрировать надо к шаблону Релиз Визарда добавить еще одну часть ( например в самый конец ) и в нее вставлять код парсинга для каждого шаблона.
Функции JoinR и ParseR можно в какую-нибудь библиотечку вставить.

Ну и, конечно, сделать что бы при редактировании верхнего поста вызывался Релиз Визард и в нем вызывался код парсинга.

PS: надо еще сделать так, что бы у скрипта парсинга был доступ к значением полей Релиз Визарда, что бы он иог их заполнить

Skald 29.09.2009 15:04

Azec, А как быть со вложенными ббкодами? с незакрытыми ббкодами? Как я и говорил, все не так просто при парсинге ббкодов и не зря желсофт целый набор функций для этого выделил (и совсем не маленьких)


Часовой пояс GMT +3, время: 19:07.

vBulletin® 3.8.1. ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot