Идеи по оптимизации

G

Gemini_13

Гость
PheRum, вроде как и то, но файл сессии остается в кеше. Тестирую последнюю ревизию - 375. Может конечно и втычу, не отрицаю, но обьясню почему тот код накидал.

Пользователь активно лазит на трекере и его сессия есть в БД и в кеше. Если удалить этого юзера, то в кеше сессия остается и он может до срабатывания крона спокойно постить, подписыватся будет как Гость. Как только с кеша сессия удаляется - юзер автоматом разлогинивается (тут ясно). Суть в том, что сам файл его сессии с кеша не удаляется сразу вместе с профилем и это тянет за собой бок. Если не ахти обьяснил, могу видео снять, день был тяжелый и голова варит туго.

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

PheRum

Легенда
фикс до R376

PHP:
case 'delete_profile':
        if ($userdata['user_id'] == $user_id) $this->ajax_die($lang['USER_DELETE_ME']);
        if (empty($this->request['confirmed'])) $this->prompt_for_confirm($lang['USER_DELETE_CONFIRM']);
 
        if ($user_id != BOT_UID)
        {
            delete_user_sessions($user_id);
            user_delete($user_id);
 
            $this->response['info'] = $lang['USER_DELETED'];
        }
        else $this->ajax_die($lang['USER_DELETE_CSV']);
    break;
 

Basilevs

Пользователь
viewtopic_torrent.tpl

Найти:
PHP:
<!-- IF $bb_cfg['callseed'] --><form action="callseed.php?t={TOPIC_ID}" method="post"><input type="submit" value="{L_CALLSEED}" class="liteoption" />&nbsp;</form><!-- ENDIF -->

Заменить
PHP:
<!-- IF $bb_cfg['callseed'] --><!-- IF not SEED_COUNT --><form action="callseed.php?t={TOPIC_ID}" method="post"><input type="submit" value="{L_CALLSEED}" class="liteoption" />&nbsp;</form><!-- ENDIF --><!-- ENDIF -->
 

dimka3210

Легенда
viewtopic_torrent.tpl

Найти:
PHP:
<!-- IF $bb_cfg['callseed'] --><form action="callseed.php?t={TOPIC_ID}" method="post"><input type="submit" value="{L_CALLSEED}" class="liteoption" />&nbsp;</form><!-- ENDIF -->

Заменить
PHP:
<!-- IF $bb_cfg['callseed'] --><!-- IF not SEED_COUNT --><form action="callseed.php?t={TOPIC_ID}" method="post"><input type="submit" value="{L_CALLSEED}" class="liteoption" />&nbsp;</form><!-- ENDIF --><!-- ENDIF -->

странно что ещё в движке нету. Меня самого эта шняга затрахивает.
 

Zenden

Пользователь
Бывают случаи когда аватарку нужно вывести в миниатюре, дублировать функцию в скрипет, а потом в html указывать жесткие размеры, мне показалось не рациональным.
Так что подправил имеющуюся.
PHP:
function get_avatar ($avatar, $type, $allow_avatar = true, $height = false, $width = false)
{
    global $bb_cfg, $lang;
 
    $user_avatar = '<img src="'. $bb_cfg['no_avatar'] .'" alt="" border="0" height="'. $height .'" width="'. $width .'" />';
 
    if ($allow_avatar)
    {
        switch($type)
        {
            case USER_AVATAR_UPLOAD:
                $user_avatar = ( $bb_cfg['allow_avatar_upload'] ) ? '<img src="'. $bb_cfg['avatar_path'] .'/'. $avatar .'" alt="" border="0" height="'. $height .'" width="'. $width .'" />' : '';
                break;
            case USER_AVATAR_REMOTE:
                $user_avatar = ( $bb_cfg['allow_avatar_remote'] ) ? '<img src="'. $avatar .'" alt="" border="0" onload="imgFit(this, 100);" onClick="return imgFit(this, 100);" height="'. $height .'" width="'. $width .'" />' : '';
                break;
            case USER_AVATAR_GALLERY:
                $user_avatar = ( $bb_cfg['allow_avatar_local'] ) ? '<img src="'. $bb_cfg['avatar_gallery_path'] .'/'. $avatar .'" alt="" border="0" height="'. $height .'" width="'. $width .'" />' : '';
                break;
        }
    }
    return $user_avatar;
}
Если потребуется миниатюра, в вызове функции просто указываем нужные размеры.
Например:
PHP:
'POSTER_AVATAR' => get_avatar($row['user_avatar'], $row['user_avatar_type'], !bf($row['user_opt'], 'user_opt', 'allow_avatar'), '32', '32'),
При оригинальном размере, два последних параметра "опускаем"
 
A

Alekseev

Гость
а может сделаете ЛС сообщение как тут в переписке, а то иногда приходится смотреть предыдущее сообщение чтобы узнать о чем идет речь
 
Сверху