VBsupport перешел с домена .ORG на родной .RU
Ура!
Пожалуйста, обновите свои закладки - VBsupport.ru
Блок РКН снят, форум доступен на всей территории России, включая новые терртории, без VPN
На форуме введена премодерация ВСЕХ новых пользователей
Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
Если вы хотите приобрести какой то скрипт/продукт/хак из каталогов перечисленных ниже: Каталог модулей/хаков
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота. Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
USvER, а подробнее? Показывать прикрепленное изображение? Показывать информацию об аттаче? Об каком-то определенном аттача? Или о тех что прикреплены к этому сообщению? Приведите пример: сейчас пост выглядит так-то, а нужно, чтобы выглядел так-то (куда добавить, что добавить, в каком случае добавить).
@USvER
Простоузер
Join Date: Jun 2009
Posts: 6
Reputation:
Novice 3
Репутация в разделе: 3
1
Спасибо огромное за помощь!
Рассказываю в деталях...
Сейчас каждый аттач отображается одной строкой. Иконка, ссылка на
сам аттач, а в скобках размер и количество скачиваний.
Задача розпарсить *.w3g файлы и отобразить полученную информацию сделав из этой строки спойлер.
Таким образом пользователь сможет предварительно посмотреть сводную информацию из w3g файлов.
Сам скрипт парсинга уже написан. Теперь его нужно только прикрутить.
Задача очень похожа на превью картинок... Спасибо за подсказочку... Как-то сразу и не подумал...
@Ghost
Гуру
Join Date: Feb 2008
Posts: 983
Версия vB: 3.8.1
Reputation:
Гуру 1014
Репутация в разделе: 896
1
USvER, понято. Итак
Нужно сделать функцию, которая парсит файл (назовем ее parse_w3g) и поместим ее в файл "includes/functions_w3g.php". Должно это выглядеть как так:
PHP Code:
<?php
function parse_w3g($attachmentid, $userid)
{
// здесь собственно код для выборки файла аттача с указанным ID и USERID
// парсинг этого файла и возврат HTML-кода для спойлера
}
?>
т.е. результат этой функции должен выглядет как-то так:
HTML Code:
<div class="spoiler"> здесь информация о файле </div>
я не заостряю на этом внимания, т.к. не знаю какой код спойлера используешь и какой скрипт для парсинга w3g
Далее нужно создать модуль на хук "postbit_display_complete" -- этот модуль будет вызываться непосредственно перед вставкой данных поста в шаблон. Делается это так: идем в админку -- Продукты и модули -- Добавить новый модуль и заполняй форму: Продукт = vBulletin, Местоположение модуля = postbit_display_complete, Заголовок = любой на вкус, Порядок выполнения = 5, Модуль включен = Да, Код PHP модуля = пока ничего не значащий, например
PHP Code:
$a = 0;
(чтобы там что-то было). Жмем кнопку "Сохранить" (или сперва читаем следующие пункты). Потом будем этот модуль редактировать.
Теперь смотрим шаблоны postbit/postbit_legacy -- это можно не делать, просто почитай, каким образом находится путь решения проблемы В этих шаблонах несложно найти кусок, отвечающий за вывод аттачей:
Вот как-то так... Я это все пишу сразу здесь, т.е. на своем форуме не проверял. Пока.
@USvER
Простоузер
Join Date: Jun 2009
Posts: 6
Reputation:
Novice 3
Репутация в разделе: 3
0
Вот это да! Просто не знаю даже как отблагодарить!
Появился только вопрос почему хукаем "postbit_display_complete" если каждый в отдельности аттач отрабатывается "postbit_attachment" с переменными $attachment[filename], $attachment[attachmentextension], $attachment[attachmentid], $attachment[dateline]?
Тоесть в этих переменных там лежит нужная нам информация.
@Ghost
Гуру
Join Date: Feb 2008
Posts: 983
Версия vB: 3.8.1
Reputation:
Гуру 1014
Репутация в разделе: 896
0
USvER, каюсь -- не заметил этот хук. Но проблема заключается здесь в том, что этот хук расположен до формироавния строки со ссылкой на аттач, тебе же необходимо внести в нее дополнения после. Хотя... Ща посмотрю, как это обойти.
Придется править шаблоны. Точнее только один шаблон: postbit_attachment -- добавить вызов переменной "$attachment[w3ginfo]", т.е. шаблон должен быть, например, таким:
Last edited by Ghost : 06-26-2009 at 02:23 PM.
Reason: Добавлено сообщение
@USvER
Простоузер
Join Date: Jun 2009
Posts: 6
Reputation:
Novice 3
Репутация в разделе: 3
0
Вот!..... Точно!... Оно! = )
Благодарствую сударь! Респект и уважуха...
Я думаю наш топик будет интересным и остальным... Инфа очень полезная на мой взгляд!
@Ghost
Гуру
Join Date: Feb 2008
Posts: 983
Версия vB: 3.8.1
Reputation:
Гуру 1014
Репутация в разделе: 896
0
USvER, не за что.
я рекомендую задуматься над тем, как облегчить парсинг этих файлов. я бы эту функцию делал как-то так (как минимум):
сперва в какой-то заранее определенной папке ищу файл "w3ginfo$attachmentid.txt"
если файл есть -- include его
если файла нет -- нахожу w3g-файл, парсю в массив w3ginfo, при помощи функции var_dump создаю файл "w3ginfo$attachmentid.txt" с содержимым вида
PHP Code:
<?php $w3ginfo=array(...); ?>
обрабатываю массив $w3ginfo -- вставляю данные в HTML-код спойлера и возвращаю результат
это снижает нагрузку на базу (не надо каждый раз считывать инфо о файле и сам файл, если он хранится в базе) и файловую систему (не надо каждый раз считывать файл, что плохо, если файлы большие по размерам). по хорошему же нужно вообще это запихивать даже не в отдельные файлы, а в дополнительное поле в таблице 'attachment'. ;)
@USvER
Простоузер
Join Date: Jun 2009
Posts: 6
Reputation:
Novice 3
Репутация в разделе: 3
0
Да... Я понимаю о чем вы...
Я думаю добавить в базу к аттачу поле где буду хранить закешированый результат...
Функции сериализации/десериализации результата скрипта уже написал один хороший дядько =)
@Ghost
Гуру
Join Date: Feb 2008
Posts: 983
Версия vB: 3.8.1
Reputation:
Гуру 1014
Репутация в разделе: 896
0
Quote:
Originally Posted by USvER
Функции сериализации/десериализации результата скрипта уже написал один хороший дядько