Владельцам 3.8.6: не поставили патч - потеряли форум!

Файловый Архив

  • Неограниченное количество категорий и суб-категорий
  • Настройки прав доступа по группам
  • Настройки прав доступа по каждой категории
  • Предпросмотр медиа файлов: FLV, IFLV, F4A, F4V, MP4, MP3, MOV и других...
  • Мультизагрузка файлов - SWFUploader
  • Добавление файлов с сервера
Подробности и история обновлений продукта в этой теме
Loading

Go Back   форум vBSupport.org > >
Register Изображения Меню vBsupport Files Manager Аллея Звёзд Реклама на форуме Search Today's Posts Mark Forums Read
  • Мемберка
  • Администраторам
  • Premoderation
  • For English speaking users
  • Изменения в правах
  • Каталог Фрилансеров
Пароли на скачивание файлов в Member Area меняются автоматически каждый день
Если вам нужно скачать какой то скрипт, за паролем ко мне в ЛС
привет какирам kerk
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота.
Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
На форуме введена премодерация ВСЕХ новых пользователей

Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
for English speaking users:
You may be surprised with restriction of access to the attachments of the forum. The reason is the recent change in vbsupport.org strategy:

- users with reputation < 10 belong to "simple_users" users' group
- if your reputation > 10 then administrator (kerk, Luvilla) can decide to move you into an "improved" group, but only manually

Main idea is to increase motivation of community members to share their ideas and willingness to support to each other. You may write an article for the subject where you are good enough, you may answer questions, you may share vbulletin.com/org content with vbsupport.org users, receiving "thanks" equal your reputation points. We should not only consume, we should produce something.

- you may:
* increase your reputation (doing something useful for another members of community) and being improved
* purchase temporary access to the improved category:
10 $ for 3 months. - this group can download attachments, reputation/posts do not matter.
20 $ for 3 months. - this group can download attachments, reputation/posts do not matter + adds eliminated + Inbox capacity increased + files manager increased permissions.

Please contact kerk or Luvilla regarding payments.

Important!:
- if your reputation will become less then 0, you will be moved into "simple_users" users' group automatically.*
*for temporary groups (pre-paid for 3 months) reputation/posts do not matter.
Не можете скачать вложение?
Изменения в правах групп пользователей
внимательно читаем эту и эту темы
Короткая версия - тут
Уважаемые пользователи!

На форуме открыт новый раздел "Каталог фрилансеров"

и отдельный раздел для платных заказов "Куплю/Закажу"

 
 
Old  
cavesru
Простоузер
Default лента на форуме 0

Народ, подскажите как сделать на vb4.2 ленту по аналогии фейсбука или вконтакте?
Чтобы туда попадали все первые сообщения в темах определенных разделов.
Спасибо!
 
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
Old  
Hobot
Эксперт
 
Hobot's Avatar
Default 0

@cavesru, верните лучше воблу 3.8.
Я с вашего форума ушёл нафиг после перехода не четвёрку.
 
Old  
cavesru
Простоузер
Default 0

Quote:
верните лучше воблу 3.8.
назад дороги нет =(

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

Code:
<?php

// ####################### SET PHP ENVIRONMENT ###########################

error_reporting(E_ALL & ~E_NOTICE);

// #################### DEFINE IMPORTANT CONSTANTS #######################

define('THIS_SCRIPT', 'stream');
define('CSRF_PROTECTION', true);  
// change this depending on your filename

// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();

// get special data templates from the datastore
$specialtemplates = array();

// pre-cache templates used by all actions
$globaltemplates = array('STREAM',
);

// pre-cache templates used by specific actions
$actiontemplates = array();

// ######################### REQUIRE BACK-END ############################
// if your page is outside of your normal vb forums directory, you should change directories by uncommenting the next line
// chdir ('/path/to/your/forums');
require_once('./global.php');
require_once(DIR . '/includes/class_postbit.php');

// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################

$navbits = construct_navbits(array('' => 'Test Page'));
$navbar = render_navbar_template($navbits);

// ###### YOUR CUSTOM CODE GOES HERE #####
$pagetitle = 'My Page Title';

$vbulletin->input->clean_array_gpc('r', array(
    'perpage'    => TYPE_UINT,
    'pagenumber' => TYPE_UINT,
)); 

$cel_users = $db->query_first("
    SELECT COUNT(thread.threadid) AS thread_count
    FROM " . TABLE_PREFIX . "thread AS thread     
    WHERE thread.forumid = 24 
"); 

sanitize_pageresults($cel_users['thread_count'], $pagenumber, $perpage, 100, 20);

if ($vbulletin->GPC['pagenumber'] < 1)
{
    $vbulletin->GPC['pagenumber'] = 1;
}
else if ($vbulletin->GPC['pagenumber'] > ceil(($cel_users['thread_count'] + 1) / $perpage))
{
    $vbulletin->GPC['pagenumber'] = ceil(($cel_users['thread_count'] + 1) / $perpage);
}
$limitlower = ($vbulletin->GPC['pagenumber'] - 1) * $perpage;
$limitupper = ($vbulletin->GPC['pagenumber']) * $perpage;  

$result = $db->query_read("
    SELECT thread.title, post.postid, post.pagetext 
    FROM " . TABLE_PREFIX . "thread AS thread, " . TABLE_PREFIX . "post AS post 
    WHERE post.threadid = thread.threadid AND post.parentid = 0 AND thread.forumid = 15
    ORDER BY thread.dateline DESC
    LIMIT $limitlower, $perpage
");

while ($row = mysql_fetch_assoc($result)) 
{ 
	$parser = new vB_BbCodeParser($vbulletin, fetch_tag_list());
    $row_result[]['title'] = $row['title'];
    $row_result[]['postid'] = $row ['postid'];
    $row_result[]['pagetext'] = $parser->do_parse($row['pagetext'],false, true, true, true, true, false); 
}

$pagenav = construct_page_nav(
    $vbulletin->GPC['pagenumber'],
    $perpage,
    $cel_users['thread_count'],
    'stream.php?' . $vbulletin->session->vars['sessionurl'], // the pagenav-link
    '', // to pass a second portion or the pagenav-link, gets directly appended to above
    '', // to pass an anchor
    '', // SEO-Link for thread, forum, member... pages - make the pagenav-links seo'ed if you use the paginator on one of those
    '', // Array to pass linkinfo for SEO-Link-Method
    ''  // Array to pass additional Info for SEO-Link-Method
); 

// ###### NOW YOUR TEMPLATE IS BEING RENDERED ######
vB_Template::preRegister('custom_result',array('row_result' => $row_result));
$templater = vB_Template::create('STREAM');
    $templater->register_page_templates();
    $templater->register('navbar', $navbar);
    $templater->register('pagetitle', $pagetitle);
    $templater->register('row_result',$row_result);
// Need to add for pagenav
    $templater->register('pagenav', $pagenav);
    $templater->register('pagenumber', $pagenumber);
    $templater->register('perpage', $perpage);
    $templater->register('output', $output);
print_output($templater->render());  

?>
 
Old  
kerk
k0t
 
kerk's Avatar
Default 2

вот эту строку
PHP Code:
$parser = new vB_BbCodeParser($vbulletinfetch_tag_list()); 
перенесите выше цикла
зачем инициализировать класс каждый раз, за каждый проход цикла?
 
Old  
cavesru
Простоузер
Default 0

запустил ленту на форуме в бетта режиме
с аттачами беда :(
http://caves.ru/stream.php

cavesru добавил 04-30-2016 в 12:42 PM
Помогите допилить мод.
Аттатчи заработали.Практически все сделал по фунционал. Осталось шаблон подредактировать и готово :-)

Рабочая версия тут:
http://caves.ru/stream.php

Шаблон STREAM
Quote:
{vb:stylevar htmldoctype}
<html xmlns="http://www.w3.org/1999/xhtml" dir="{vb:stylevar textdirection}" lang="{vb:stylevar languagecode}" id="vbulletin_html">
<head>
<title>{vb:raw vboptions.bbtitle} - {vb:raw pagetitle}</title>
{vb:raw headinclude}
{vb:raw headinclude_bottom}
</head>
<body>

{vb:raw header}

{vb:raw navbar}

<div id="pagetitle">
<h1>{vb:raw pagetitle}</h1>
</div>

<br />

<vb:if condition="$pagenav">
<div id="pagination_top">
{vb:raw pagenav}
</div>
</vb:if>

<br /><br />

<vb:each from="row_result" key="rowid" value="rowinfo">
<div class="blockhead">
<ul>
<li><a href="{vb:raw $vboptions.vbforum_url}{vb:if "$vboptions['vbforum_url']", '/', ''}threads/{vb:var rowinfo.threadid}" rel="nofollow">{vb:var rowinfo.title}</a></li>
<li><a href="{vb:raw $vboptions.vbforum_url}{vb:if "$vboptions['vbforum_url']", '/', ''}members/{vb:var rowinfo.userid}">{vb:var rowinfo.username}</a></li>
<li>{vb:var rowinfo.dateline}</li>
</ul>
</div>
<div>{vb:raw rowinfo.pagetext}</div>
<div><a href="{vb:raw $vboptions.vbforum_url}{vb:if "$vboptions['vbforum_url']", '/', ''}threads/{vb:var rowinfo.threadid}" rel="nofollow"><b>подробнее</b></a></div>
</vb:each>

<br /><br />

<vb:if condition="$pagenav">
<div id="pagination_top">
{vb:raw pagenav}
</div>
</vb:if>

{vb:raw footer}
</body>
</html>
файл stream.php

Quote:
<?php

// ####################### SET PHP ENVIRONMENT ###########################

error_reporting(E_ALL & ~E_NOTICE);

// #################### DEFINE IMPORTANT CONSTANTS #######################

define('THIS_SCRIPT', 'stream');
define('CSRF_PROTECTION', true);

// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();

// get special data templates from the datastore
$specialtemplates = array();

// pre-cache templates used by all actions
$globaltemplates = array('STREAM',);

// pre-cache templates used by specific actions
$actiontemplates = array();

// ######################### REQUIRE BACK-END ############################
// if your page is outside of your normal vb forums directory, you should change directories by uncommenting the next line
// chdir ('/path/to/your/forums');
require_once('./global.php');
require_once(DIR . '/includes/functions_bigthree.php');
require_once(DIR . '/includes/class_postbit.php');
require_once(DIR . '/includes/class_bootstrap_framework.php');
require_once(DIR . '/vb/types.php');

// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################

$navbits = construct_navbits(array('' => 'Лента'));
$navbar = render_navbar_template($navbits);

$pagetitle = 'Лента тем';

$vbulletin->input->clean_array_gpc('r', array(
'perpage' => TYPE_UINT,
'pagenumber' => TYPE_UINT,
));

vB_Bootstrap_Framework::init();

$cel_users = $db->query_first("
SELECT COUNT(thread.threadid) AS thread_count
FROM " . TABLE_PREFIX . "thread AS thread
WHERE thread.visible = 1 AND thread.forumid in (18,12,13,26,16,15) AND thread.dateline > UNIX_TIMESTAMP(DATE_SUB(CURRENT_DATE, INTERVAL 24 MONTH))
");

sanitize_pageresults($cel_users['thread_count'], $pagenumber, $perpage, 100, 20);

if ($vbulletin->GPC['pagenumber'] < 1)
{
$vbulletin->GPC['pagenumber'] = 1;
}
else if ($vbulletin->GPC['pagenumber'] > ceil(($cel_users['thread_count'] + 1) / $perpage))
{
$vbulletin->GPC['pagenumber'] = ceil(($cel_users['thread_count'] + 1) / $perpage);
}
$limitlower = ($vbulletin->GPC['pagenumber'] - 1) * $perpage;
$limitupper = ($vbulletin->GPC['pagenumber']) * $perpage;

$result = $db->query_read("
SELECT post.*
FROM " . TABLE_PREFIX . "thread AS thread, " . TABLE_PREFIX . "post AS post
WHERE post.threadid = thread.threadid AND post.parentid = 0 AND thread.visible = 1 AND thread.forumid in (18,12,13,26,16,15) AND thread.dateline > UNIX_TIMESTAMP(DATE_SUB(CURRENT_DATE, INTERVAL 24 MONTH))
ORDER
BY thread.dateline DESC
LIMIT $limitlower, $perpage
");

while ($row = mysql_fetch_assoc($result))
{
if ($row['attach'])
{
$contenttypeid = vB_Types::instance()->getContentTypeID('vBForum_Post');

$sql = "SELECT fd.thumbnail_dateline, fd.filesize, IF(fd.thumbnail_filesize > 0, 1, 0) AS hasthumbnail, fd.thumbnail_filesize,
a.dateline, a.state, a.attachmentid, a.counter, a.contentid AS postid, a.filename, type.contenttypes
FROM " . TABLE_PREFIX . "attachment AS a
INNER JOIN " . TABLE_PREFIX . "filedata AS fd ON (a.filedataid = fd.filedataid)
LEFT JOIN " . TABLE_PREFIX . "attachmenttype AS type ON (fd.extension = type.extension)
WHERE a.contentid = " . $row['postid'] . "
AND a.contenttypeid = " . $contenttypeid . "
ORDER BY a.displayorder";

$attachments = $db->query_read_slave($sql);

while ($attachment = $db->fetch_array($attachments))
{
$content = @unserialize($attachment['contenttypes']);
$attachment['newwindow'] = $content["$contenttypeid"]['n'];
$row['attachments']["$attachment[attachmentid]"] = $attachment;
}
}

$vbulletin -> options['attachthumbs'] = 0;
$vbulletin -> options['viewattachedimages'] = 3;

$postbit_factory = new vB_Postbit_Factory();
$postbit_factory -> registry =& $vbulletin;
// $postbit_factory -> forum =& $foruminfo;
// $postbit_factory -> thread =& $threadinfo;
$postbit_factory -> cache = array();
$postbit_factory -> bbcode_parser = new vB_BbCodeParser($vbulletin, fetch_tag_list());

$postbit_obj =& $postbit_factory -> fetch_postbit('post');
// $postbit_obj -> highlight =& $replacewords;

$postbit = $postbit_obj -> construct_postbit($row);

$row_result[] = array (
'threadid' => $row['threadid'],
'title' => $row['title'],
'userid' => $row['userid'],
'username' => $row['username'],
'postid' => $row['postid'],
'dateline' => date('d.m.Y, H:i', $row['dateline']),
'pagetext' => $row['message']
);
}

$pagenav = construct_page_nav(
$vbulletin->GPC['pagenumber'],
$perpage,
$cel_users['thread_count'],
'stream.php?' . $vbulletin->session->vars['sessionurl'], // the pagenav-link
'', // to pass a second portion or the pagenav-link, gets directly appended to above
'', // to pass an anchor
'', // SEO-Link for thread, forum, member... pages - make the pagenav-links seo'ed if you use the paginator on one of those
'', // Array to pass linkinfo for SEO-Link-Method
'' // Array to pass additional Info for SEO-Link-Method
);

// ###### NOW YOUR TEMPLATE IS BEING RENDERED ######
vB_Template:reRegister('custom_result',array('row_result' => $row_result));
$templater = vB_Template::create('STREAM');
$templater->register_page_templates();
$templater->register('navbar', $navbar);
$templater->register('pagetitle', $pagetitle);
$templater->register('row_result',$row_result);
// Need to add for pagenav
$templater->register('pagenav', $pagenav);
$templater->register('pagenumber', $pagenumber);
$templater->register('perpage', $perpage);
$templater->register('output', $output);
print_output($templater->render());

?>

Last edited by cavesru : 04-30-2016 at 01:42 PM. Reason: Добавлено сообщение
 
 

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 02:58 PM.


Powered by vBulletin® Version vBSupport Edition
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.