Владельцам 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  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation Официальные фиксы движка с vB.com 28

Теперь для 3.6.3 и 3.6.4



1.
Баг: ошибка при ручном запуске запланированного задания снятия блокировки с временно заблокированных пользователей.
Версия: 3.6.3
Исправление:
В файле includes/cron/removebans.php на 29 строке найти:
PHP Code:
LEFT JOIN " . TABLE_PREFIX . "user AS user USING(userid
заменить на:
PHP Code:
INNER JOIN " . TABLE_PREFIX . "user AS user USING(userid

2.
Баг: просто найденная ошибка в скрипте.
Версия: 3.6.3
Исправление:
В файле admincp/admincalendar.php на 945 и 949 строках найти:
PHP Code:
$vbulletin->GPC['holidayinfo']['title'
заменить на:
PHP Code:
$vbulletin->GPC['title'

3.
Баг: ошибка во фразе.
Версия: 3.6.3
Исправление:
Во фразе 'activate_deleterequest' найти:
Code:
register.php?a=act&amp;i={1}&amp&u={2}
заменить на:
Code:
register.php?a=act&amp;i={1}&amp;u={2}

4.
Баг: ошибка при отправке электронных писем.
Версия: 3.6.3
Исправление:
В файле search.php на 1529 строке найти:
PHP Code:
$db->free_result($post); 
заменить на:
PHP Code:
$db->free_result($posts); 

5.
Баг: неправильная работа функции предотвращения КРИКА в заголовках тем.
Версия: 3.6.3
Исправление:
В файле includes/functions_newpost.php на 724 строке найти:
PHP Code:
function fetch_no_shouting_text($text)
{
    
// stops $text being all UPPER CASE
    
global $vbulletin;

    
// we only actually touch a-z with vbstrtolower()
    
$effective_string preg_replace('#[^a-z0-9\s]#i'''$text);

    if (
$vbulletin->options['stopshouting'] AND vbstrlen($effective_string) >= $vbulletin->options['stopshouting'] AND $effective_string == strtoupper($effective_string))
    {
        return 
ucwords(vbstrtolower($text));
    }
    else
    {
        return 
$text;
    }

заменить на:
PHP Code:
function fetch_no_shouting_text($text)
{
    
// stops $text being all UPPER CASE
    
global $vbulletin;

    
// we only actually touch a-z with vbstrtolower()
    
$effective_string preg_replace('#[^a-z0-9\s]#i'''$text);

    if (
$vbulletin->options['stopshouting'] AND vbstrlen($effective_string) >= $vbulletin->options['stopshouting'] AND $effective_string == strtoupper($effective_string))
    {
        return 
vbucwords(vbstrtolower($text));
    }
    else
    {
        return 
$text;
    }
}

/**
* Capitalizes the first letter of each word, provided it is within a-z.
* Ignores locales.
*
* @param    string    Text to capitalize
*
* @return    string    Ucwords'd text
*/
function vbucwords($text)
{
    return 
preg_replace_callback(
        
'#(^|\s)[a-z]#',
        
create_function('$matches''return strtoupper($matches[0]);'),
        
$text
    
);

 
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 18

6.
Баг: просто найденная ошибка в скрипте.
Версия: 3.6.3
Исправление:
В файле includes/cron/rssposter.php на 274 строке найти:
PHP Code:
$itemdata->set('sticky', ($feed['rssoptions'] & $vbulletin->bf_misc_feedoptions['stickthread'] ? 0)); 
заменить на:
PHP Code:
$itemdata->set('sticky', ($feed['rssoptions'] & $vbulletin->bf_misc_feedoptions['stickthread']) ? 0); 
7.
Баг: просто найденная ошибка в скрипте.
Версия: 3.6.3
Исправление:
В файле includes/cron/rssposter.php на 279 строке найти:
PHP Code:
$itemdata->set('visible', ($feed['rssoptions'] & $vbulletin->bf_misc_feedoptions['moderatethread'] ? 1)); 
заменить на:
PHP Code:
$itemdata->set('visible', ($feed['rssoptions'] & $vbulletin->bf_misc_feedoptions['moderatethread']) ? 1); 
 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 16

8.
Баг: при отправке личного сообщения двум и более пользователям, у одного из которых выключено всплывающее извещение о ЛС, всплывающее предупреждение о ЛС появляется только у последнего пользователя.
Версия: 3.6.3
Исправление:
В файле includes/class_dm_pm.php на 557 строке найти:
PHP Code:
$popupusers = array(); 
закомментировать.
 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 18

9.
Баг: максимальная длина назвыания события в календаре не работает.
Версия: 3.6.3
Исправление:
В шаблоне 'calendar_edit_customfield' найти:
HTML Code:
<input type="text" class="bginput" name="$customfieldname_opt" value="$custom[optional]" size="25" tabindex="1" />
заменить на:
HTML Code:
<input type="text" class="bginput" name="$customfieldname_opt" value="$custom[optional]" size="25" maxlenght="$custom[lenght]" tabindex="1" />

10.
Баг: максимальная длина назвыания события в календаре не работает.
Версия: 3.6.3
Исправление:
В файле calendar.php на 1461 строке найти:
PHP Code:
        if ($custom['allowentry'] AND !$found)
        {
            
$custom['optional'] = $eventcustomfields["{$custom['calendarcustomfieldid']}"];
        } 
заменить на:
PHP Code:
        if ($custom['allowentry'] AND !$found)
        {
            
$custom['optional'] = $eventcustomfields["{$custom['calendarcustomfieldid']}"];
            
$custom['lenght'] = $eventcustomfields["{$custom['lenght']}"];
        } 

11.
Баг: при включении по умолчанию типа отображения тем "Линейный - новые вначале" у только что зарегитрировавшихся пользователей при просмотре тем старые отображаются вначале.
Версия: 3.6.3
Исправление:
В файле includes/class_dm_user.php на 1260 строке найти (будьте внимательны !):
PHP Code:
else if ($this->registry->bf_misc_regoptions['thread_linear_newest'] & $this->registry->options['defaultregoptions'])
{
   
$threadedmode 0;

заменить на:
PHP Code:
else if ($this->registry->bf_misc_regoptions['thread_linear_newest'] & $this->registry->options['defaultregoptions'])
{
   
$threadedmode 3;

 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 18

12.
Баг: проверка максимального количества сообщений при повышении, выборе определённого аватара и установке статуса не работает.
Версия: 3.6.3, 3.6.4
Исправление:
Выполнить следующие запросы:
Code:
ALTER TABLE avatar CHANGE minimumposts minimumposts INT UNSIGNED NOT NULL DEFAULT '0';

ALTER TABLE ranks CHANGE minposts minposts INT UNSIGNED NOT NULL DEFAULT '0';

ALTER TABLE usertitle CHANGE minposts minposts INT UNSIGNED NOT NULL DEFAULT '0';

13.
Баг: ошибка при поиске всех тем пользователя.
Версия: 3.6.3, 3.6.4
Исправление:
В файле search.php на 128 строке найти:
PHP Code:
if ($_POST['do'] == 'process')
{
    
// don't go to do=process, go to do=doprefs
    
if ($vbulletin->GPC['doprefs'] != '')
    {
        
$_POST['do'] = 'doprefs';
        
$_REQUEST['do'] = 'doprefs';
    }

после этого добавить:
PHP Code:
if ($_REQUEST['do'] == 'process' AND !$vbulletin->userinfo['userid'] AND $vbulletin->options['searchimagecheck'] AND $vbulletin->options['regimagetype'] AND !isset($_REQUEST['imagestamp']))
{
    
// guest user has come from a do=process link that does not include image verification
    
$_REQUEST['do'] = 'intro';


14.
Баг: не анализируются HTML символы.
Версия: 3.6.3, 3.6.4
Исправление:
В файле includes/class_dm.php на 1303 строке найти:
PHP Code:
if ($this->info['parseurl'])
        {
            
$pagetext convert_url_to_bbcode($pagetext);
        } 
после этого добавить:
PHP Code:
$pagetext preg_replace('/&#(0*32|x0*20);/'' '$pagetext);
$pagetext trim($pagetext); 

15.
Баг: что-то связанное с удалёнными извещениями, но точно не понял.
Версия: 3.6.3, 3.6.4
Исправление:
В файле showthread.php на 847 строке найти:
PHP Code:
        $totalposts $threadinfo['replycount'] + 1;

        
$getpostids $db->query_read("
            SELECT postid
            FROM " 
TABLE_PREFIX "post AS post
            
$hook_query_joins
            WHERE threadid = 
$threadid
                AND visible = 1
                
$hook_query_where
            ORDER BY dateline 
$postorder
            LIMIT 
$limitlower$perpage
        "
); 
заменить на:
PHP Code:
        $totalposts $threadinfo['replycount'] + 1;

        if (
can_moderate($thread['forumid']))
        {
            
$coventry '';
        }
        else
        {
            
$coventry fetch_coventry('string');
        }

        
$getpostids $db->query_read("
            SELECT postid
            FROM " 
TABLE_PREFIX "post AS post
            
$hook_query_joins
            WHERE threadid = 
$threadid
                AND visible = 1
                " 
. ($coventry "AND post.userid NOT IN ($coventry)" '') . "
                 
$hook_query_where
            ORDER BY dateline 
$postorder
            LIMIT 
$limitlower$perpage
        "
); 
В этом же файле на 909 строке найти:
PHP Code:
if ($post['visible'] == AND (!in_coventry($post['userid']) OR can_moderate($thread['forumid']))) 
заменить на:
PHP Code:
if ($post['visible'] == AND !in_coventry($post['userid'])) 

16.
Баг: ошибка при поиске в шаблонах с учётом регистра.
Версия: 3.6.3, 3.6.4
Исправление:
В файле clientscript/vbulletin_templatemgr.js на 354 строке найти:
Code:
if (txt.charAt(i) == str.charAt(x))
заменить на:
Code:
if (txt.charAt(i).toLowerCase() == str.charAt(x).toLowerCase())
 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 16

17.
Баг: добавление и анализация смайлов в сообщениях.
Версия: 3.6.3, 3.6.4
Исправление:
В файле /includes/class_bbcode.php на 444 строке найти:
PHP Code:
    function parse_smilies($text$do_html false)
    {
        
$cache =& $this->cache_smilies($do_html);

        foreach (
$cache AS $find => $replace)
        {
            
$text preg_replace('/(?<!&amp|&quot|&lt|&gt|&copy|&#[0-9]{1}|&#[0-9]{2}|&#[0-9]{3}|&#[0-9]{4}|&#[0-9]{5})' preg_quote($find'/') . '/s'$replace$text);
        }

        return 
$text;
    } 
заменить на:
PHP Code:
    function parse_smilies($text$do_html false)
    {
        
$cache =& $this->cache_smilies($do_html);
        
$this->local_smilies =& $cache;
        
        
$quoted = array();
        foreach (
$cache AS $find => $replace)
        {
            
$quoted[] = preg_quote($find'/');
        }

        
$text preg_replace_callback('/(?<!&amp|&quot|&lt|&gt|&copy|&#[0-9]{1}|&#[0-9]{2}|&#[0-9]{3}|&#[0-9]{4}|&#[0-9]{5})(' implode('|'$quoted) . ')/s', array(&$this'replace_smilies'), $text);

        
/*foreach ($cache AS $find => $replace)
        {
            $text = preg_replace('/(?<!&amp|&quot|&lt|&gt|&copy|&#[0-9]{1}|&#[0-9]{2}|&#[0-9]{3}|&#[0-9]{4}|&#[0-9]{5})' . preg_quote($find, '/') . '/s', $replace, $text);
        }*/

        
return $text;
    }

    
/**
    * @ignore
    */
    
function replace_smilies($matches)
    {
        return 
$this->local_smilies["$matches[0]"];
     } 

18.
Баг: цензор при отображении последнего сообщения в профиле не работает.
Версия: 3.6.3, 3.6.4
Исправление:
В файле /includes/functions_forumlist.php на 224 строке найти:
PHP Code:
$lastpostinfo['trimthread'] = fetch_trimmed_title($lastpostinfo['lastthread']); 
заменить на:
PHP Code:
$lastpostinfo['trimthread'] = fetch_trimmed_title(fetch_censored_text($lastpostinfo['lastthread'])); 

19.
Баг: ошибка в системе предупреждений (стандартной).
Версия: 3.6.3, 3.6.4
Исправление:
В файле /includes/functions_infractions.php на 40 строке найти:
PHP Code:
warnings warnings 
заменить на:
PHP Code:
warnings CAST(warnings AS SIGNED) - 
в том же файле на 64 строке найти:
PHP Code:
infractions infractions 
заменить на:
PHP Code:
infractions CAST(infractions AS SIGNED) - 
в том же файле на 87 строке найти:
PHP Code:
ipoints ipoints 
заменить на:
PHP Code:
ipoints CAST(ipoints AS SIGNED) - 
 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 13

20.
Баг: ошибка при редактировании подписки на тему.
Версия: 3.6.3, 3.6.4
Исправление:
В файле /includes/functions.php на 980 строке найти:
PHP Code:
function fetch_foruminfo(&$forumid$usecache true)
{
    global 
$vbulletin;

    
$forumid intval($forumid);
    if (!
$usecache OR !isset($vbulletin->forumcache["$forumid"]))
    {
        
$vbulletin->forumcache["$forumid"] = $vbulletin->db->query_first_slave("
            SELECT forum.*, NOT ISNULL(podcast.forumid) AS podcast
            FROM " 
TABLE_PREFIX "forum AS forum
            LEFT JOIN " 
TABLE_PREFIX "podcast AS podcast ON (forum.forumid = podcast.forumid AND podcast.enabled = 1)
            WHERE forum.forumid = 
$forumid
        "
);
    }

    if (!
$vbulletin->forumcache["$forumid"])
    {
        return 
false;
    }

    
// decipher 'options' bitfield
    
$vbulletin->forumcache["$forumid"]['options'] = intval($vbulletin->forumcache["$forumid"]['options']);
    foreach(
$vbulletin->bf_misc_forumoptions AS $optionname => $optionval)
    {
        
$vbulletin->forumcache["$forumid"]["$optionname"] = (($vbulletin->forumcache["$forumid"]['options'] & $optionval) ? 0);
    }

    (
$hook vBulletinHook::fetch_hook('fetch_foruminfo')) ? eval($hook) : false;

    return 
$vbulletin->forumcache["$forumid"];

заменить на:
PHP Code:
function fetch_foruminfo(&$forumid$usecache true)
{
    global 
$vbulletin;

    
$forumid intval($forumid);
    if (!
$usecache OR !isset($vbulletin->forumcache["$forumid"]))
    {
        if (isset(
$vbulletin->forumcache["$forumid"]['permissions']))
        {
            
$perms $vbulletin->forumcache["$forumid"]['permissions'];
        }
        
$vbulletin->forumcache["$forumid"] = $vbulletin->db->query_first_slave("
            SELECT forum.*, NOT ISNULL(podcast.forumid) AS podcast
            FROM " 
TABLE_PREFIX "forum AS forum
            LEFT JOIN " 
TABLE_PREFIX "podcast AS podcast ON (forum.forumid = podcast.forumid AND podcast.enabled = 1)
            WHERE forum.forumid = 
$forumid
        "
);
    }

    if (!
$vbulletin->forumcache["$forumid"])
    {
        return 
false;
    }
    
    if (isset(
$perms))
    {
        
$vbulletin->forumcache["$forumid"]['permissions'] = $perms;
    }

    
// decipher 'options' bitfield
    
$vbulletin->forumcache["$forumid"]['options'] = intval($vbulletin->forumcache["$forumid"]['options']);
    foreach(
$vbulletin->bf_misc_forumoptions AS $optionname => $optionval)
    {
        
$vbulletin->forumcache["$forumid"]["$optionname"] = (($vbulletin->forumcache["$forumid"]['options'] & $optionval) ? 0);
    }

    (
$hook vBulletinHook::fetch_hook('fetch_foruminfo')) ? eval($hook) : false;

    return 
$vbulletin->forumcache["$forumid"];


21.
Баг: ошибка при редактировании подписки на тему.
Версия: 3.6.3, 3.6.4
Исправление:
В файле editpost.php на 496 строке найти:
PHP Code:
$edit['emailupdate'] = 9999
закомментировать


22.
Баг: ошибка в запросе в функции fetch_quotable_posts.
Версия: 3.6.3, 3.6.4
Исправление:
В файле /includes/functions_newpost.php на 1099 строке найти:
PHP Code:
IF(user.usernameuser.usernamepost.username) AS username 
заменить на:
PHP Code:
IFNULL(user.username,post.username) AS username 
 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 15

23.
Баг: ошибка при объединении тем.
Версия: 3.6.3, 3.6.4
Исправление:
В файле postings.php на 1593 строке найти:
PHP Code:
if ($mergethreadid == $threadid OR ($mergethreadinfo['isdeleted'] AND !can_moderate($mergethreadinfo['forumid'], 'candeleteposts')) OR (!$mergethreadinfo['visible'] AND !can_moderate($mergethreadinfo['forumid'], 'canmoderateposts'))) 
заменить на:
PHP Code:
if ($mergethreadinfo['open'] == 10 OR $mergethreadid == $threadid OR ($mergethreadinfo['isdeleted'] AND !can_moderate($mergethreadinfo['forumid'], 'candeleteposts')) OR (!$mergethreadinfo['visible'] AND !can_moderate($mergethreadinfo['forumid'], 'canmoderateposts'))) 
 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 11

24.
Баг: ошибка при перепостроении вложений.
Версия: 3.6.3, 3.6.4
Исправление:
В файле admincp/misc.php на 621 строке найти:
PHP Code:
echo '<p>' construct_phrase($vbphrase['building_attachment_thumbnails'], "misc.php?" $vbulletin->session->vars['sessionurl'] . "do=rebuildthumbs&startat=" $vbulletin->GPC['startat'] . "&pp=" $vbulletin->GPC['perpage'] . "&autoredirect=" $vbulletin->GPC['autoredirect']) . '</p>'
заменить на:
PHP Code:
echo '<p>' construct_phrase($vbphrase['building_attachment_thumbnails'], "misc.php?" $vbulletin->session->vars['sessionurl'] . "do=rebuildthumbs&startat=" $vbulletin->GPC['startat'] . "&pp=" $vbulletin->GPC['perpage'] . "&autoredirect=" $vbulletin->GPC['autoredirect'] . "&quality=" $vbulletin->GPC['quality']) . '</p>'
 
Old  
AnTekapb
Эксперт
interpreter
 
AnTekapb's Avatar
Exclamation 14

25.
Баг: группировка личных сообщений по дате работает неверно.
Версия: 3.6.3, 3.6.4
Исправление:
В файле includes/functions_misc.php на 209 строке найти:
PHP Code:
$periods['last_month'] = $timestamp -= (28 86400); 
заменить на:
PHP Code:
$periods['last_month'] = $timestamp -= (86400); 

26.
Баг: ошибка после удаления языка при его же использовании.
Версия: 3.6.3, 3.6.4
Исправление:
В файле admincp/language.php на 505 строке найти:
PHP Code:
$db->query_write("UPDATE " TABLE_PREFIX "user SET languageid = 0 WHERE languageid = " $vbulletin->GPC['dolanguageid']); 
ниже добавить:
PHP Code:
$db->query_write("UPDATE " TABLE_PREFIX "session SET languageid = 0 WHERE languageid = " $vbulletin->GPC['dolanguageid']); 

27.
Баг: описание ошибки не очень понятно, но судя по всему, она значительная.
Версия: 3.6.3, 3.6.4
Исправление:
В файле search.php на 1349 строке найти:
PHP Code:
if ((!empty($post_query_logic) OR !empty($post_join_query_logic))) 
ВЫШЕ добавить:
PHP Code:
require_once(DIR '/includes/functions_forumlist.php');
cache_moderators(); 

28.
Баг: ошибка при отправке письма пользовалелям, получившим нарушение.
Версия: 3.6.3, 3.6.4
Исправление:
В файле infraction.php на 790 строке найти:
PHP Code:
else if (!empty($vbulletin->GPC['message'])) 
заменить на:
PHP Code:
else 
 
 

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:36 PM.


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